订阅音讯
redis两种订阅形式
- 订阅频道(subscribe, unsubscribe) ,精准订阅某个key
- 订阅模式(psubscribe, punsubscribe),基于正则订阅某key
服务器记录订阅客户端的数据结构
struct redisServer {
// 字典+链表,记录订阅频道客户端 {string: list<redisClient>]}
dict *pubpub_channels;
// 链表记录订阅模式客户端 list<{client: *redisClient, pattern: *robj}>
list *pubpub_patterns;
}
发送音讯
publist <channel> <message>
接管音讯
订阅频道接管音讯格局
[message, <channel>, <content>]
订阅模式接管音讯格局
[pmessage, <pattern>, <channel>, <content>]
发表回复