一、什麼是發布訂閱
其實就是mq,被訂閱者寫訊息,訂閱者們實時讀到訊息進行處理。
在說這之前,前面提到的list型別blpop也是可以模擬單播阻塞佇列的。但是他終歸是模擬。redis為我們提供了屬於他自己的發布訂閱。核心命令:
只有已訂閱的客戶端才能收到訊息,比如我給test傳送了一條helloworld,他會發給當前所有訂閱test的客戶端推送helloworld這條訊息,後來的客戶端再去訂閱test,也不會收到這個歷史訊息。
# 客戶端1給test傳送hello
127.0.0.1:6379> publish test helloworld
(integer) 0
# 這時候啟動client2去訂閱test,結果發現不會輸出任何內容,也就是歷史的helloworld我不會收到
127.0.0.1:6379> subscribe test
reading messages... (press ctrl-c to quit)
1) "subscribe"
2) "test"
3) (integer) 1
# 這時候我在去客戶端1給test這個channel傳送hello
127.0.0.1:6379> publish test hello
(integer) 1
# 切換到client2,發現收到了hello這條訊息
如果你還不懂發布訂閱,看這篇文章就夠了!
發布訂閱 是一種程式設計的思想 發布訂閱的思想 先進行訂閱,把要執行的一些方法先儲存到乙個事件池中 當條件成立時,進行發布的操作 發布時,遍歷事件池中的所有的方法,讓這些方法依次執行 attachevent dom2級相容的處理就是採用發布訂閱的思想 on 訂閱事件 emit 發布事件 off 取消...
Redis的發布訂閱
一般不用做訊息發布訂閱。簡介redis發布訂閱 pub sub 是一種訊息通訊模式 傳送者 pub 傳送訊息,訂閱者 sub 接收訊息。redis客戶端可以訂閱任意數量的頻道。下圖展示了頻道 channel1 以及訂閱這個頻道的三個客戶端 client2 client5 和 client1 之間的關...
Redis的發布訂閱
一 redis的發布訂閱 程序間的一種訊息通訊模式 傳送者 pub 傳送訊息,訂閱者 sub 接收資訊。訂閱 發布訊息圖 二 訂閱 發布訊息常用命令 psubscribe patterm patterm 訂閱乙個或多個符合給定模式的頻道 pubsub subcommand argument argu...