发布者客户端向指定的频道 (channel) 发布消息, 订阅该频道的每个客户端都可以收到该消息
3.7.1 命令
1. 发布消息
- publish
2. 订阅消息
- subscribe
图3-17 多个客户端同时订阅频道 channel: sports
注意:
- 客户端在执行订阅命令之后进入了订阅状态, 只能接收 subscribe、psubscribe、unsubscribe、punsubscribe四个命令
- 新开启的订阅客户端, 无法收到该频道之前的消息, 因为 Redis 不会对发布的消息进行持久化
3. 取消订阅
- unsubscribe
4. 按照模式订阅和取消订阅
- psubscribe
- punsubscribe
5. 查询订阅
(1) 查看活跃的频道
所谓活跃的频道是指当前频道至少有一个订阅者
- pubsub channels
(2) 查看频道订阅数
- pubsub numsub
(3) 查看模式订阅数
- pubsub numpat
3.7.2 使用场景
类似消息队列, 用于消息解耦
图3-18 发布订阅用于视频信息变化通知