Redis 发布订阅操作

说明

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

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

pub/sub模式的缺点:

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

图示详细操作如下

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

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

在 redis-cli 中实战

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

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

扫描二维码关注公众号,回复: 14447843 查看本文章
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 返回当前服务器被订阅的模式数量

猜你喜欢

转载自blog.csdn.net/qq_18948359/article/details/119797418