redis發布與訂閱模式

2021-09-28 20:57:50 字數 988 閱讀 2456

一、訂閱命令

1、訂閱頻道:subscribe new.it

還可以使用模糊匹配:subscribe new.[ie]t

2、訂閱模式:psubscribe new.*

3、退訂:unsubscribe new.it

4、傳送訂閱資訊:publish 頻道名 內容

二、訂閱資料結構

1、訂閱頻道將所有頻道的訂閱關係都儲存在了伺服器的pubsub_channels字典中,如下圖:

同乙個頻道增加訂閱,則將客戶端新增到訂閱者鍊錶的末尾。退訂則從鍊錶中刪除客戶端資訊。如果退訂後鍊錶為空,則從字典中刪除對應頻道的鍵

2、訂閱模式將所有模式的訂閱關係儲存在伺服器的pubsub_patterns屬性中,如下圖:

三、檢視訂閱資訊

使用pubsub命令,該命令有三個子命令

1、pubsub channels [pattern]子命令用於返回伺服器當前被訂閱的頻道,其中pattern引數是可選的(針對頻道):

如果不給定,那麼命令返回伺服器當前被訂閱的所有頻道

如果給定,那麼命令返回伺服器當前被訂閱的頻道中與pattern模式相匹配的頻道

2、pubsub numsub [channel-1 channel-2 … channel-n]子命令接受任意多個頻道作為輸入引數,並返回這些頻道的訂閱者數量(針對頻道)

3、pubsub numpat子命令用於返回伺服器當前被訂閱模式的數量(針對模式)

Redis發布與訂閱模式

redis的pub sub實現了發布 訂閱訊息正規化,發布者將訊息發布到不同的頻道,訂閱者訂閱感興趣的頻道訊息,而不需要關心是誰在發布。這種發布者和訂閱者的解耦合方式可以極大的擴充套件的擴充套件性網路拓撲。為了訂閱foo和bar,客戶端發出乙個訂閱的頻道名稱 subscribe foo bar其他客...

redis 發布與訂閱模式

一 傳送訊息 命令 publish channel msg 命令說明 publish 為關鍵字,表示使用發布訊息功能 channel是主體或渠道的意思,指在特定的主體或渠道中發布訊息 msg就是要發布的訊息 二 訂閱訊息 命令 subscribe channel channel 命令說明 subsc...

Redis發布訂閱模式

publish subscribe 發布訂閱模式的原理 包含兩個角色,乙個是發布者,乙個是訂閱者 訂閱者可以訂閱乙個或者多個頻道channel 發布者可以向指定頻道發布資訊 通過publish發布訊息 publish channel message publish channel1.1 maizie...