RocketMQ的兩種消費模型


轉自:

https://blog.csdn.net/ID__9527/article/details/84255680

RocketMQ是阿里巴巴公司的一個消息隊列框架(很多思想借鑒Kafka),對於RocketMQ本身不做過多說明,下面主要說明RocketMQ的兩種消費模型。

    消費模型有兩種:廣播消費消息模型,集群消費消息模型。

    廣播消費消息模型,指消費這消費某主題的所有隊列的消息,消費組在該消息模型下不起作用,類似JMS的publish/subscribe.

    集群消費消息模型,是指同一個消費組的消費者各自消費某一主題的消費隊列的消息,比如有一個主題 topicA,該主題有4個隊列(創建主題的時候可以指定該主題的隊列的數量),有一個消費組testConsumerGroup,該消費組有四個消費者(四個機器或者四個進程),則四個消費者各自消費一個消息隊列。

    情景回顧:在做RocketMQ的監控時,測試消息的消費情況,發現不同消費組,都會消費掉同一條消息,這和我對當時集群消費模型的理解(即:集群模式,消息隊列中的消息只能被消費一次)不符。在查閱資料及代碼驗證后得出結論:

    1. 在Rocket集群消費模式下,(訂閱)同一個主題(Topic)下的消息,對於不同的消費組是一種“廣播形式”,即每個消費組的都會消費消息。

    2. 在Rocket集群消費模式下,(訂閱)同一個主題(Topic)下的消息,對於相同的消費組的消費者而言是一種集群模式,即消費者平分消息並消費。
————————————————
版權聲明:本文為CSDN博主「ID__9527」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/ID__9527/java/article/details/84255680


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM