【赵渝强老师】Redis的消息发布与订阅

在这里插入图片描述
  一般来说消息队列有两种场景,一种是发布者订阅者模式,而另一种是生产者消费者模式。这两种场景的消息队列Redis都能够实现。
  发布者和订阅者通过channel频道进行解偶, 订阅者监听某个channel的消息,当发布者向该channel推送消息时,订阅该channel的消费者都可以收到消息。视频讲解如下:

Redis的消息发布与订阅

【赵渝强老师】Redis的消息发布与订阅

  下图展示了Redis发布者订阅者模式的架构。
在这里插入图片描述
  Redis提供的相关操作命令如下:

  • publish:发布消息
命令为格式:publish channel名称 "消息内容"
  • subscribe: 订阅消息
命令为格式:subscribe channel名称
  • psubscribe: 使用通配符定义消息
命令为格式:psubscribe channel*名称

  在发布者和订阅者模式下,Redis维护一个数据字典pubsub_channels用于保存channel以及订阅者的关系,结构如下图所示。
在这里插入图片描述
  由于Redis支持的消息类型是广播类型的消息,因此这里需要开启三个会话的窗口。一个作为消息的发布者,另外两个作为消息的订阅者。下面是具体的操作步骤。
(1)在消息订阅者的两个会话窗口中启动消息订阅者。

127.0.0.1:6379> subscribe channel1
Reading messages... (press Ctrl-C to quit)

(2)在消息发布者的会话窗口中发布消息。

127.0.0.1:6379> publish channel1  helloworld
(integer) 2

(3)此时在消息订阅者的两个会话窗口中将成功接收到发布的消息,如下图所示。
在这里插入图片描述

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赵渝强老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值