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 …]]

退訂給定的頻道。