Redis的發布 訂閱(pub sub)

2021-06-29 13:41:36 字數 551 閱讀 5435

發布訂閱(pub/sub)是一種訊息通訊模式

,主要的目的是解耦訊息發布者和訊息訂閱者之間的耦合,這點和設計模式中的觀察者模式比較相似。pub /sub不僅僅解決發布者和訂閱者直接**級別耦合也解決兩者在物理部署上的耦合。

redis作為乙個pub/sub server

,在訂閱者和發布者之間起到了

訊息路由

的功能。訂閱者可以通過subscribe和psubscribe命令向redis server訂閱自己感興趣的訊息型別,

redis將訊息型別(message)稱為頻道(channel);將pmessage稱為模式

。當發布者通過publish命令向redis server傳送特定型別的訊息時。訂閱該訊息型別的全部client都會收到此訊息。這裡訊息的傳遞是多對多的。乙個client可以訂閱多個 channel,也可以向多個channel傳送訊息。

訊息的訂閱和發布有

兩種方式:

1 頻道模式,訂閱感興趣的頻道,或者向指定的頻道傳送訊息。

2 匹配模式,通過萬用字元匹配,傳送特定萬用字元的訊息,或者接收特定萬用字元的訊息。

redis原始碼分析之發布訂閱(pub sub)

redis算是快取界的老大哥了,最近做的事情對redis依賴較多,使用了裡面的發布訂閱功能,事務功能以及sortedset等資料結構,後面準備好好學習總結一下redis的一些知識點。先看下redis發布訂閱的結構 其中發布者跟訂閱者之間通過channel進行互動,channel分為兩種模式。redi...

Redis 發布訂閱

redis 發布訂閱 pub sub 是一種訊息通訊模式 傳送者 pub 傳送訊息,訂閱者 sub 接收訊息。redis 客戶端可以訂閱任意數量的頻道。下圖展示了頻道 channel1 以及訂閱這個頻道的三個客戶端 client2 client5 和 client1 之間的關係 當有新訊息通過 pu...

Redis 發布訂閱

redis 發布訂閱 pub sub 是一種訊息通訊模式 傳送者 publish 傳送訊息,訂閱者 subscribe 接收訊息。redis 客戶端可以訂閱任意數量的頻道。下圖是 頻道 channel1 以及訂閱這個頻道的三個客戶端 client1 client2和 client3 當有新訊息通過 ...