Redis 发布订阅
Redis Pub/Sub实现了消息传递系统,发送者(在Redis术语中称为发布者)发送消息,而接收者(订阅者)接收消息。通过这个消息传递的连接称为 通道 。
在Redis中,客户端可以订阅任意数量的通道。
示例
下面的示例说明了发布订阅的概念是如何工作的。在这个示例中,一个客户端订阅了一个名为’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命令
以下表格列出了与Redis Pub/Sub相关的一些基本命令。
序号 | 命令及描述 |
---|---|
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 …]] 停止监听给定频道的消息。 |