redis 訊息佇列 釋出、訂閱模式
阿新 • • 發佈:2019-02-14
向佇列中放入元素命令 lpush key value1 value2 value3,rpush key value1 value2 value3;
從佇列中取元素命令 lpop key;rpop key;blpop key timeout;brpop key timeout;
lpop 和brpop的區別是當列表為空的時候,lpop會每隔一秒會呼叫一次lpop命令檢視是否有新任務,而brpop可以實現一旦有新任務加入列表,消費者就可以知道,是通過阻塞列表的方式實現的,
優先順序訊息佇列實現 :blpop/brpop key1 key2 timeout;優先處理 key1 列表的任務,當key1中沒有任務再處理key2列表的任務,timtout 為0是代表如果列表沒有任務,會一直阻塞。
釋出/訂閱模式命令:publish channel message,釋出訊息,返回訂閱數
subscribe channel;訂閱
unsubscribe channel;取消訂閱
psubscribe channel.?* ;按規則訂閱
punsubscribe channel.?* 退訂指定規則