一、简介
Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。
Redis 客户端可以订阅任意数量的频道
二、测试
1.打开两个或两个以上的客户端
2.创建订阅频道
客户端a
127.0.0.1:6379> SUBSCRIBE runoobChat
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "runoobChat"
3) (integer) 1
3.在runoobChat频道发布消息
客户端b
127.0.0.1:6379> PUBLISH runoobChat "Redis PUBLISH test"
(integer) 2 # 因为我有两个客户端订阅了该频道,所以是2,这个订阅该频道的客户端的数量
127.0.0.1:6379> PUBLISH runoobChat "Redis PUBLISH aaa"
(integer) 2
4.订阅该频道的客户端展示的信息
客户端a
127.0.0.1:6379> SUBSCRIBE runoobChat
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "runoobChat"
3) (integer) 1
1) "message"
2) "runoobChat"
3) "Redis PUBLISH test"
1) "message"
2) "runoobChat"
3) "Redis PUBLISH aaa"
三、订阅与发布的其他命令
序号 | 命令及描述 |
---|---|
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 ...]] 指退订给定的频道。 |