redis 实现发布订阅
一,简单实现
1 创建一个list 叫msg,放入 b c d 三个值
2 取出msg的值
当值被出去完之后
在代码中 如果还是不停的向key中取值,建立连接会浪费资源
所以使用阻塞命令 brpop和blpop
brpop key timeout ;
这样就可以解决在代码中不停的向redis建立连接了。
二、发布订阅
1 发布消息
publish,用法是 publish channel message,如向 channel1.1说一声hi
2 订阅频道
订阅频道的命令是 subscribe,可以同时订阅多个频道,用法是 subscribe channel1 [channel2 ...],例如新开一个客户端订阅上面频道:(不会收到消息,因为不会收到订阅之前就发布到该频道的消息)
然后 所有订阅者就可以收到发布的消息了