Redis 发布订阅功能
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis 发布订阅功能相关的知识,希望对你有一定的参考价值。
参考技术A Redis 发布订阅 (pub/sub) 是一种消息通信模式:订阅者 (sub) 订阅频道,发送者 (pub) 向频道发送消息,订阅者通过该频道接收消息。不过发布订阅模式有2点需要注意:
客户端1输入 SUBSCRIBE runoobChat 订阅频道 runoobChat
客户端2 在 频道 runoobChat 发布消息,订阅者就能接收到消息。
客户端1将会接收:
Redis 将所有频道的订阅关系保存在服务器状态的字典里面,这个字典的健是某个被订阅的频道,而健的值则是一个链表,链表里面记录了所有订阅这个频道的客户端。
每当客户端执行``命令订阅某些频道的时候,服务器斗湖将客户端与被订阅频道在 字典中进行关联。
按照频道是否有订阅者,关联操作可以分为2种情况执行:
调用栈
服务器将所有频道的订阅关系保存再服务器状态的,与此类似,服务器也将所有模式的订阅关系都保存在服务器状态的属性里面
pubsub_patterns 属性是一个链表,链表中的每一个节点都包含着一个 pubsubPattern 结构,这个结构的属性记录了被订阅的模式,而 client 性则记录了订阅模式的客户端。
客户端执行命令订阅某些模式的时候,服务器会对每个被订阅的模式执行下列2个操作:
以上是关于Redis 发布订阅功能的主要内容,如果未能解决你的问题,请参考以下文章