redis 发布/订阅模式

实现进程间的消息传递

"发布/订阅"(publish/subscribe)分别是发布者和订阅者。订阅者可以订阅一个或者多个频道(channel),而发布者可以向指定的频道(channel)发送消息,所有订阅此频道的订阅者都会收到此消息

发布者发布消息的命令是 publish,用法是 publish channel message,如向 channel1.1说一声hi

127.0.0.1:6379> publish channel:1 hi
(integer) 0

订阅频道的命令是 subscribe,可以同时订阅多个频道,用法是 subscribe channel1 [channel2 ...],例如新开一个客户端订阅上面频道:(不会收到消息,因为不会收到订阅之前就发布到该频道的消息)

127.0.0.1:6379> subscribe channel:1
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "channel:1"
3) (integer) 1

(1)subscribe。表示订阅成功的反馈信息。第二个值是订阅成功的频道名称,第三个是当前客户端订阅的频道数量。

(2)message。表示接收到的消息,第二个值表示产生消息的频道名称,第三个值是消息的内容。

(3)unsubscribe。表示成功取消订阅某个频道。第二个值是对应的频道名称,第三个值是当前客户端订阅的频道数量,当此值为0时客户端会退出订阅状态,之后就可以执行其他非"发布/订阅"模式的命令了。

redis 发布/订阅模式

上一篇:external-attacher源码分析(2)-核心处理逻辑分析


下一篇:openMVG源码学习(一)main_SfMInit_ImageListing