Redis 發布訂閱用法

2022-07-16 18:21:13 字數 2579 閱讀 1000

一、發布訂閱模型

發布訂閱其作用是為了減少依賴關係,通常也叫觀察者模式。主要是把耦合點單獨抽離出來作為第三方,隔離易變化的傳送方和接收方。

傳送方:只負責向第三方傳送訊息。(雜誌社把讀者雜誌交給郵局)

接收方:被動接收訊息。(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

一、發布訂閱模型

發布訂閱其作用是為了減少依賴關係,通常也叫觀察者模式。主要是把耦合點單獨抽離出來作為第三方,隔離易變化的傳送方和接收方。

傳送方:只負責向第三方傳送訊息。(雜誌社把讀者雜誌交給郵局)

接收方:被動接收訊息。(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 當有新訊息通過 ...