Redis-10-发布订阅

Redis-10-发布订阅

1. 原理简介

进程间的一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。

mark

  • 消息发送者
  • 订阅者
  • 订阅频道

2. 命令

mark

3. 测试

  1. 订阅频道
1
2
3
4
5
6
7
## 订阅一个频道
127.0.0.1:6379> SUBSCRIBE zhuuu
Reading messages... (press Ctrl-C to quit)
## 等待消息到频道
1) "subscribe"
2) "zhuuu"
3) (integer) 1
  1. 发布消息
1
2
3
## 发送者发送消息到频道
127.0.0.1:6379> PUBLISH zhuuu hellozhuuu
(integer) 1
  1. 最终结果:
1
2
3
4
5
6
7
8
127.0.0.1:6379> SUBSCRIBE zhuuu
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "zhuuu"
3) (integer) 1
1) "message" ## 消息
2) "zhuuu" ## 哪个频道的消息
3) "hellozhuuu" ## 消息内容

4. 底层原理

通过Subscribe订阅一个频道后,redis-server维护了一个字典,字典就是一个个的频道

使用场景:

  • 实时消息系统
  • 实时聊天(频道当做聊天室)
  • 微博,公众号订阅

稍微复杂的场景用MQ消息队列完成!!!

打赏
  • 版权声明: 本博客所有文章除特别声明外,均采用 Apache License 2.0 许可协议。转载请注明出处!
  • © 2019-2022 Zhuuu
  • PV: UV:

请我喝杯咖啡吧~

支付宝
微信