Redis - 发布订阅

Redis Pub/Sub实现了消息传递系统,其中发送者(在redis术语中称为发布者)在接收者(订阅者)接收消息时发送消息.邮件传输的链接称为频道.

在Redis中,客户可以订阅任意数量的频道.

示例

以下示例说明了发布订阅者概念的工作原理.在以下示例中,一个客户端订阅名为"redisChat"的频道.

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

现在,两个客户端正在同一个名为"redisChat"的频道上发布消息,而上述订阅的客户端正在接收消息.

redis 127.0.0.1:6379> PUBLISH redisChat "Redis is a great caching technique"  
(integer) 1  
redis 127.0.0.1:6379> PUBLISH redisChat "Learn redis by tutorials point"  
(integer) 1   
1) "message" 
2) "redisChat" 
3) "Redis is a great caching technique" 
1) "message" 
2) "redisChat" 
3) "Learn redis by tutorials point"

Redis PubSub命令

下表列出了与Redis Pub/Sub相关的一些基本命令.

Sr.NoCommand&说明
1PSUBSCRIBE模式[模式...]

订阅与给定模式匹配的频道.

2PUBSUB子命令[argument [argument ...]]

告诉Pub/Sub系统的状态.例如,哪些客户端在服务器上处于活动状态.

3发布频道消息

向频道发布消息.

4PUNSUBSCRIBE [pattern [pattern ...]]

停止监听发布到与给定模式匹配的频道的消息.

5SUBSCRIBE频道[频道...]

收听发布到指定频道的消息.

6UNSUBSCRIBE [频道[频道...]]

停止收听发布到指定频道的消息.