ERR only (P)SUBSCRIBE / (P)UNSUBSCRIBE / PING / QUIT allowed in this context
封装Redis发布订阅时,SUB时,又想探测具体Channel的状态,于是执行PUBSUB CHNNALES命令,报
ERR only (P)SUBSCRIBE / (P)UNSUBSCRIBE / PING / QUIT allowed in this context 的错误。
原因:
发布订阅模式下不能共用一个TCP连接,也不能在其上面执行其他命令 only (P)SUBSCRIBE / (P)UNSUBSCRIBE / PING / QUIT allowed。
解决方法
1、修改Redis底层源码
2、重开一个连接,进行其他操作,加个Redis连接池。
书到用时方恨少,是非经过不知难。
博观而约取,厚积而薄发。@karllen 每天进步一点点。