redis的pub-sub模式是快產快銷的,因為用的記憶體做訪問,產生的訊息立馬被消費者一次性處理掉,沒有痕跡的,也不能無限制使用記憶體。
如果是如下場景,倒是可以考慮用redis:
① 需求是快產快銷的即時消費場景;
② 十分在意速度;
③ 允許訊息丟失;
④ 不在意操作痕跡;
⑤ 資料量不大。
lpush:把訊息加到佇列頭部去。
brpop:從佇列末端取出訊息,是阻塞模式(bpop是非阻塞)。
① 實現簡單;
② 可以持久化,能檢視到,但不能重複消費;
③ 順序得到保證;
④ rpush可以把訊息加到佇列末尾,lpush把訊息加到佇列頭部,達到優先消費的目的。
① 消費確認ack比較麻煩,不能解決消費者讀取後但還沒處理時宕機的問題,導致訊息意外丟失,通常自己維護乙個pending表,保證ack。
② 不能廣播;
③ 不能重複消費,一消費完了就刪掉了;
④不能分組消費,得自己在業務裡寫。
subscribe:訂閱通道。
publish:向通道發布訊息。
unsubscribe:取消訂閱。
① 廣播模式;
② 乙個消費者可以訂閱多個通道;
③訊息即時傳送,不等訊息者主動讀取,消費者都是從通道發布的訊息中自動接收的。
zadd key score member:加入集合。
zrangebyscore:根據score獲取成員。
①自定義訊息id。
①不允許重複消費(集合),訊息id有錯誤時會導致訊息順序錯誤。
xadd:新加訊息。
xread:從訊息佇列中讀取訊息。
①stream型別的redis就是為了做訊息佇列的,自動生成訊息id、分組消費、ack、訊息轉義、佇列監控等。
Kerberos認證工作之第三幕
第三幕 第二天一早,athena在咖啡間遇上了euripides。在euripides倒咖啡的時候,athena拍了拍euripides.athena 我有了乙個新的charon的版本來解決我們的問題。euripides 真的嗎?好快呀。athena 好,你看,這些問題困擾了我一夜。euripide...
可消費訊息數量 訊息佇列之Kafka概念篇
1.基本定義 kafka是乙個分布式的 可分割槽的 可複製的訊息系統。它提供了普通資訊系統的功能,但具有自己獨特的設計 2.底層原理 2 topic與訊息 這樣,訊息就以乙個個id的方式,組織起來。consumer選擇乙個topic,通過id指定從哪個位置開始消費訊息。消費完成之後保留id,下次可以...
MFC 基礎篇 第三章 MFC訊息對映機制
windows應用程式的輸入由windows系統以訊息的形式傳送給應用程式的視窗.這些視窗通過視窗過程來接收和處理訊息,然後把控制權還給windows 從訊息的傳送途徑上看,訊息分兩種 佇列訊息和非佇列訊息 佇列訊息送到系統訊息佇列,然後到執行緒訊息佇列,最後送給目的視窗過程 非佇列訊息直接送給目的...