Redis Publish Subscribe(发布和订阅)
Redis Publish Subscribe(发布和订阅)
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 kaifaxueyuan point" (integer) 1 1) "message" 2) "redisChat" 3) "Redis is a great caching technique" 1) "message" 2) "redisChat" 3) "Learn redis by kaifaxueyuan point"
Redis PubSub 命令
下表列出了与Redis Pub/Sub的一些基本命令。
No | 命令和解释 |
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 ...]] 停止侦听指定信道的消息。 |