订阅消息

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>]

Leonly
1 声望0 粉丝

« 上一篇
redis对象
下一篇 »
REDIS文件事件