2MUCH

Redis-发布和订阅

2022-07-18


Redis-发布和订阅

概念

Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。共包括三个角色:发送者、频道(channel)、订阅者。

发布方往channel发布消息,若订阅方有订阅这个channel,则可以接收到这个消息。

一个订阅方可以订阅多个channel。

简单实践

打开redis客户端,订阅一个channel

127.0.0.1:6379> subscribe channel1
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "channel1"
3) (integer) 1

表示正在订阅状态

再打开一个redis客户端(在另一个会话中),发布消息:

127.0.0.1:6379> publish channel1 helloworld
(integer) 1  # 返回的是当前订阅者的数量

此时就能看到订阅方接收到了这条消息:

127.0.0.1:6379> subscribe channel1
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "channel1"
3) (integer) 1
1) "message"
2) "channel1"
3) "helloworld"