一、發布訂閱模型
發布訂閱其作用是為了減少依賴關係,通常也叫觀察者模式。主要是把耦合點單獨抽離出來作為第三方,隔離易變化的傳送方和接收方。
傳送方:只負責向第三方傳送訊息。(雜誌社把讀者雜誌交給郵局)
接收方:被動接收訊息。(1:向郵局訂閱讀者雜誌,2:去門口接郵過來的雜誌)
第三方:儲存訂閱雜誌的接收方,並在雜誌過來時送給接收方。 (郵局)
二、redis中的發布訂閱
redis實現完整的發布訂閱正規化,就是說任何一台redis伺服器,啟動後都可以當做發布訂閱伺服器。
1、普通訂閱
a、訂閱bar頻道。格式:subscribe name1 name2。
成功訂閱回覆,分別對應訂閱型別、訂閱頻道、訂閱數量。
b、發布bar頻道。格式:publish channelname message。
c、訂閱bar頻道的回覆,分別對應訊息型別,頻道,訊息。
2、模式訂閱
redis支援模式匹配訂閱,*為模糊匹配符。
訂閱所有頻道的訊息:psubscribe *
訂閱以news.開頭的所有頻道:psubscribe news.*
3、取消訂閱
取消普通訂閱和取消模式訂閱的命令。
unsubscribe bar
punsubscribe ba*
取消在官方提供的連線工具中無法模擬的。
4、檢視訂閱資訊
命令:pubsub channels [pattern],檢視訂閱訊息是redis在2.8中新增加的命令之一。
4.1、返回當前伺服器被訂閱的所有頻道。
127.0.0.1:6379> pubsub channels
1) "bar"
4.2、指定匹配引數,返回與模式匹配的所有頻道。
127.0.0.1:6379> pubsub channels ba*
1) "bar"
4.3、接受任意多個頻道作為輸入引數,返回這些頻道的訂閱者數量。
127.0.0.1:6379> pubsub numsub bar bar2
1) "bar"
2) (integer) 1
3) "bar2"
4) (integer) 0
Redis 發布訂閱用法
一 發布訂閱模型 發布訂閱其作用是為了減少依賴關係,通常也叫觀察者模式。主要是把耦合點單獨抽離出來作為第三方,隔離易變化的傳送方和接收方。傳送方 只負責向第三方傳送訊息。雜誌社把讀者雜誌交給郵局 接收方 被動接收訊息。1 向郵局訂閱讀者雜誌,2 去門口接郵過來的雜誌 第三方 儲存訂閱雜誌的接收方,並...
Redis 發布訂閱
redis 發布訂閱 pub sub 是一種訊息通訊模式 傳送者 pub 傳送訊息,訂閱者 sub 接收訊息。redis 客戶端可以訂閱任意數量的頻道。下圖展示了頻道 channel1 以及訂閱這個頻道的三個客戶端 client2 client5 和 client1 之間的關係 當有新訊息通過 pu...
Redis 發布訂閱
redis 發布訂閱 pub sub 是一種訊息通訊模式 傳送者 publish 傳送訊息,訂閱者 subscribe 接收訊息。redis 客戶端可以訂閱任意數量的頻道。下圖是 頻道 channel1 以及訂閱這個頻道的三個客戶端 client1 client2和 client3 當有新訊息通過 ...