文章更新时间:2020/04/22
一、简介
- Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。
- Redis 客户端可以订阅任意数量的频道。
借用网上两张图来说明发布订阅的流程:
订阅服务
下图展示了三个客户端:client2 ,client5 和 client1分别订阅频道:channel1的流程
推送消息
当有新消息通过 PUBLISH 命令发送给频道 channel1 时, 这个消息就会被发送给订阅它的三个客户端:
二、实例解析
启动Redis服务器
创建会话
打开一个客户端,并创建一个名为redisChat的消息会话频道
创建消息订阅者(消费者)
按照以下步骤打开3个客户端,并同时订阅频道redisChat
发布消息
我们可以发现,刚才订阅了消息的3个消费者都消费到消息了
三、发布订阅的常用命令
##订阅/创建某个频道
SUBSCRIBE 频道名
##订阅某个频道【可以配置匹配模式,类似sql的like条件】
PSUBSCRIBE 频道名
##发布消息到某个频道
PUBLISH 频道 消息
##退订某个频道
UNSUBSCRIBE 频道名
##查看频道的订阅和发布状态
PUBSUB CHANNELS