Redis 的發布與訂閱

2021-08-11 09:13:26 字數 1070 閱讀 5669

redis 的發布與訂閱 是程序間的一種訊息通訊模式:傳送者(pub)傳送訊息,訂閱者(sub)接受訊息。

雖然 redis 支援訊息發布與訂閱,但是企業中是不會用 redis 去幹這個事情的。因為redis 的訊息發布與訂閱是不可靠的,特別是當大資料量的 redis 訊息發布與訂閱發生時。一般用 activitymq 等

redis 訊息發布與訂閱的基本執行原理是:客戶端訂閱【訊息頻道】,【訊息頻道】傳送訊息,訂閱者客戶端接受訊息。

psubscribe

pattern

[pattern...]

訂閱乙個或多個符合給定模式的頻道。

pubsub

subcommand

[argument [argument...]]

檢視訂閱與發布系統狀態。

publish channel message
將訊息傳送到指定的頻道。

punsubscribe

[pattern [pattern...]]

退訂所有給定模式的頻道。

subscribe

channel

[channel...]

訂閱給定的乙個或多個頻道資訊。

unsubscribe

[channel [channel..]]

指退訂給定的頻道。

先訂閱後發布才能收到訊息。

訂閱端需要獨佔乙個執行緒,發布端不需要占用執行緒。

Redis 發布與訂閱

redis 自從2.0版本後,增加發布與訂閱等新特性,該功能有點類似設計模式中的觀察者模式,對訊息的生產者與接收者進行松耦合。也可以用該特性實現系統與系統之間的訊息傳遞,該功能的 的實現非常實用和高效。下面我們介紹一下,如何使用發布與訂閱 redis提供發布與訂閱幾個命令 subscribe cha...

redis發布與訂閱

redis在2.8.0版本之後出了乙個新功能,叫pub sub,也叫 發布與訂閱 在這篇文章中不僅要介紹它是如何用的,更重要的是要介紹它的應用場景。在之前介紹websocket之用tubesock在rails實現聊天室 五 的時候,就用redis的pub sub實現過聊天室。相關的 是這樣的 red...

Redis發布與訂閱

訂閱 發布訊息圖 第乙個 訊息傳送者,第二個 頻道 第三個 訊息訂閱者!下圖展示了頻道 channel1 以及訂閱這個頻道的三個客戶端 client2 client5 和 client1 之間的關係 當有新訊息通過 publish 命令傳送給頻道 channel1 時,這個訊息就會被傳送給訂閱它的三...