一種訊息通訊模式:傳送者(pub)傳送訊息,訂閱者(sub)接收訊息。
redis 客戶端可以訂閱任意數量的頻道。
下圖展示了頻道 channel1 , 以及訂閱這個頻道的三個客戶端 —— client2 、 client5 和 client1 之間的關係:
以下例項演示了發布訂閱是如何工作的。在我們例項中我們建立了訂閱頻道名為 cctv:
redis 127.0.0.1:6379> subscribe cctv
reading messages... (press ctrl-c to quit)
1) "subscribe"
2) "cctv"
3) (integer) 1
redis 127.0.0.1:6379> publish cctv "優秀"
(integer) 1
redis 127.0.0.1:6379> publish cctv "可愛"
(integer) 1
現在,我們先重新開啟個 redis 客戶端,然後在同乙個頻道 cctv 發布兩次訊息,訂閱者就能接收到訊息。
# 訂閱者的客戶端會顯示如下訊息
1) "message"
2) "cctv"
3) "優秀"
1) "message"
2) "cctv"
3) "可愛"
psubscribe pattern [pattern …] 訂閱乙個或多個符合給定模式的頻道。
pubsub subcommand [argument [argument …]] 檢視訂閱與發布系統狀態。
publish channel message 將資訊傳送到指定的頻道。
punsubscribe [pattern [pattern …]] 退訂所有給定模式的頻道。
subscribe channel [channel …] 訂閱給定的乙個或多個頻道的資訊。
unsubscribe [channel [channel …]] 指退訂給定的頻道。Redis的發布 訂閱(pub sub)
發布訂閱 pub sub 是一種訊息通訊模式 主要的目的是解耦訊息發布者和訊息訂閱者之間的耦合,這點和設計模式中的觀察者模式比較相似。pub sub不僅僅解決發布者和訂閱者直接 級別耦合也解決兩者在物理部署上的耦合。redis作為乙個pub sub server 在訂閱者和發布者之間起到了 訊息路由...
Redis發布訂閱 pub sub 命令介紹
redis 發布訂閱 pub sub 是一種訊息通訊模式 傳送者 pub 傳送訊息,訂閱者 sub 接收訊息。punsubscribe pattern pattern1 subscribe channel channel1 unsubscribe channel channel1 publish c...
redis中的發布訂閱 Pub Sub
這裡使用nodejs的redis模組說明,具體可見 先來通過乙個簡單的例子了解下redis中的pub sub具體怎麼實現吧。var express require express var router express.router var redis require redis get home p...