Redis 佇列學習記錄

T-mac發表於2019-06-20

一 利用redis佇列實現訂單超時自動取消的基本原理
1 把訂單id放到redis裡 並設定過期時間 我這裡設定的是5秒
Redis 佇列學習記錄
2 監聽redis15號庫
Redis 佇列學習記錄
這裡需要修改redis.conf

Redis 佇列學習記錄
鍵空間通知使得客戶端可以通過訂閱頻道或模式, 來接收那些以某種方式改動了 Redis 資料集的事件。例如鍵過期;
在psubscribe中'keyevent@15:expired'為固定模式, 15表示第15號資料庫 在回撥函式裡,$message 就是當前觸發過期事件的key,注意是key 不是value;拿到了key 中的資訊後面就可以處理邏輯了
Redis 佇列學習記錄
二 利用redis佇列sub/pub實現即時任務
1 這裡需要用到redis 頻道
釋出一個訊息到channel;這個頻道 可以被多個客戶端訂閱
Redis 佇列學習記錄
2 訂閱這個頻道
Redis 佇列學習記錄
需要注意的是 psubscribe的第一個引數是陣列 表示可以同時訂閱多個頻道
Redis 佇列學習記錄

那是一個傳奇

相關文章