Redis發送訂閱
Redis發佈訂閱(pub/sub)是一種消息通信模式:發送者(pub)發送消息,訂閱者(sub)接收消息。
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 yiibai"
(integer) 1
1) "message"
2) "redisChat"
3) "Redis is a great caching technique"
1) "message"
2) "redisChat"
3) "Learn redis by yiibai"
Redis發佈訂閱命令
下表列出了與Redis發佈訂閱相關的一些基本命令。
序號
命令
說明
1
PSUBSCRIBE pattern [pattern …]
訂閱一個或多個符合給定模式的頻道。
2
PUBSUB subcommand [argument [argument …]]
查看訂閱與發佈系統狀態。
3
PUBLISH channel message
將信息發送到指定的頻道。
4
PUNSUBSCRIBE [pattern [pattern …]]
退訂所有給定模式的頻道。
5
SUBSCRIBE channel [channel …]
訂閱給定的一個或多個頻道的信息。
6
UNSUBSCRIBE [channel [channel …]]
退訂給定的頻道。