使用清單類型的lpush和rpop指令(或者rpush和lpop指令,右進左出),
可以很友善的實作一個任務隊列,但是需要設定定時去查詢隊列,
并且可以使用對應的阻塞指令,如lpush和brpop指令,可以實作背景接收消息的推送。
redis支援釋出/訂閱的模式,"釋出/訂閱"模式中包含兩種角色,分别是釋出者和訂閱者。
訂閱者可以訂閱一個或若幹個頻道(channel),釋出者可以向指定的頻道發送消息,所有訂閱此頻道的訂閱者都會收到此消息。
但是需要注意一下,使用釋出訂閱模式實作的消息隊列,當有用戶端訂閱channel後隻能收到後續釋出到該頻道的消息,之前發送的不會緩存,必須provider和consumer同時線上。
指令參數
publish channel msg
将資訊 message 發送到指定的頻道 channel
subscribe channel [channel ...]
訂閱頻道,可以同時訂閱多個頻道
unsubscribe [channel ...]
取消訂閱指定的頻道, 如果不指定頻道,則會取消訂閱所有頻道
psubscribe pattern [pattern ...]
訂閱一個或多個符合給定模式的頻道,每個模式以 * 作為比對符,比如 it* 比對所有以 it 開頭的頻道( it.news 、 it.blog 、 it.tweets 等等), news.* 比對所有以 news. 開頭的頻道( news.it 、 news.global.today 等等),諸如此類
punsubscribe [pattern [pattern ...]]
退訂指定的規則, 如果沒有參數則會退訂所有規則
pubsub subcommand [argument [argument ...]]
檢視訂閱與釋出系統狀态