Redis 简明教程

Redis - Publish Subscribe

Redis Pub/Sub 实现消息系统,其中发送者(在 redis 术语中称为发布者)发送消息,而接收者(订阅者)收到消息。传输消息的链接称为 channel

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

Example

下面的示例解释了发布订阅概念的工作原理。在以下示例中,一个客户端订阅名为“redisChat”的频道。

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

现在,两个客户端正在一个名为“redisChat”的通道上发布消息,并且上面订阅的客户端正在接收消息。

redis 127.0.0.1:6379> PUBLISH redisChat "Redis is a great caching technique"
(integer) 1
redis 127.0.0.1:6379> PUBLISH redisChat "Learn redis by tutorials point"
(integer) 1
1) "message"
2) "redisChat"
3) "Redis is a great caching technique"
1) "message"
2) "redisChat"
3) "Learn redis by tutorials point"

Redis PubSub Commands

下表列出了一些与 Redis Pub/Sub 相关的基本命令。

Sr.No

Command & Description

1

PSUBSCRIBE pattern [pattern …​] 订阅与给定模式匹配的通道。

2

PUBSUB subcommand [argument [argument …​]] 讲述 Pub/Sub 系统的状态。例如,哪些客户端在服务器上处于活动状态。

3

PUBLISH channel message 在某个通道上发布消息。

4

PUNSUBSCRIBE [pattern [pattern …​]] 停止侦听发布到与给定模式匹配的通道的消息。

5

SUBSCRIBE channel [channel …​] 侦听发布到给定通道的消息。

6

UNSUBSCRIBE [channel [channel …​]] 停止侦听发布到给定通道的消息。