一、什么是发布和订阅
Redis
发布订阅(pub/sub)
是一种消息通信模式:发送者(pub)
发送消息,订阅者(sub)
接收消息。
Redis客户端
可以订阅任意数量的频道。
二、Redis的发布和订阅
-
客户端可以订阅频道如下图:
-
当这个频道发布消息后,消息就会发送给订阅的客户端。
三、发布订阅命令行实现
- 打开一个客户端订阅channel1。
127.0.0.1:6379> subscribe channel1
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "channel1"
3) (integer) 1
- 打开另一个客户端,给channel1发布消息hello。
127.0.0.1:6379> publish channel1 hello
(integer) 1
- 打开第一个客户端可以看到发送的消息
127.0.0.1:6379> subscribe channel1
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "channel1"
3) (integer) 1
1) "message" //接收到的消息
2) "channel1"
3) "hello"
注:发布的消息没有持久化,如果在订阅的客户端收不到hello,只能收到订阅后发布的消息。