Redis 发布订阅

Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(publish)发送消息,订阅者(subscribe)接收消息。


Redis 客户端可以订阅任意数量的频道。

下图是:频道 channel1 , 以及订阅这个频道的三个客户端 —— client1、 client2和 client3:


当有新消息通过 publish命令发送给频道 channel1 时, 这个消息就会被发送给订阅它的三个客户端:


实例:

以下实例演示了发布/订阅是如何工作的。在我们的实例中我们创建了订阅频道redisChat:

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


然后重新开启个 redis 客户端,在同一个频道 redisChat 发布消息,看看订阅者是否能接收到消息。

127.0.0.1:6379> publish redisChat "Redis is a great caching technique"
(integer) 1

127.0.0.1:6379> publish redisChat "Learn redis by polaris.com"
(integer) 1


最后去订阅者的客户端查看消息

127.0.0.1:6379> subscribe redisChat
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "redisChat"
3) (integer) 1
1) "message"
2) "redisChat"
3) "Redis is a great caching technique"
1) "message"
2) "redisChat"
3) "Learn redis by polaris.com"


Redis 发布订阅命令

1、PSUBSCRIBE pattern [pattern ...]            订阅一个或多个符合给定模式的频道。

2、PUBSUB subcommand [argument [argument ...]]               查看订阅与发布系统状态。

3、PUBLISH channel message                   将信息发送到指定的频道。

4、PUNSUBSCRIBE [pattern [pattern ...]]               退订所有给定模式的频道。

5、SUBSCRIBE channel [channel ...]                      订阅给定的一个或多个频道的信息。

6、UNSUBSCRIBE [channel [channel ...]]               指退订给定的频道。


发布了79 篇原创文章 · 获赞 19 · 访问量 12万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章