Redis 发布订阅操作

说明

Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。

Redis 客户端可以订阅任意数量的频道。

pub/sub模式的缺点:

消息的发布是无状态的,无法保证可达。对于发布者来说,消息是“即发即失”的,此时如果某个消费者在生产者发布消息时下线,重新上线之后,是无法接收该消息的。

图示详细操作如下

首先我们需要订阅一个主题

然后我们对这个主题进行发布消息,那么订阅的 client 就可以收到相关的消息

在 redis-cli 中实战

我们需要开启三个客户端窗口,其中两个用于做订阅,另外一个用来做发布消息使用

在其中的两个输入订阅的主题

subscribe order::states

下面是两个窗口中订阅对应的主题

在另一个窗口中发布消息

publish order::states order

发布消息以及接受到消息

附录

可以使用 client list 命令来查看当前的链接 client

这里是有三个客户端,其中一个是发布用的,其余两个是 subscribe。

使用 pubsub channels 查询 channel

这里当我们把订阅的两个 redis-cli 关闭之后,再次执行 pubsub channels 时,这里就返回 empty list or set

通过 pubsub numsub order::states 来查询 订阅当前这个消息的频道数

通过 pubsub numpat 返回当前服务器被订阅的模式数量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Wayfreem

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

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

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

打赏作者

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

抵扣说明:

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

余额充值