訊息模型。rocketmq主要由producer、broker、consumer三部分組成,其中producer負責生產訊息,consumer負責消費訊息,broker負責儲存訊息。broker在實際部署過程中對應一台伺服器,每個broker可以儲存多個topic的訊息,每個topic的訊息也可以分片儲存於不同的broker。message queue用於儲存訊息的實體地址,每個topic中的訊息位址儲存於多個message queue中。consumergroup由多個consumer例項構成。
訊息生產者。負責生產訊息,一般由業務系統負責生產訊息。乙個訊息生產者會把業務應用系統裡產生的訊息傳送到broker伺服器。rocketmq提供多種傳送方式,同步傳送、非同步傳送、順序傳送、單向傳送。同步和非同步方式均需要broker返回確認訊息,單向傳送不需要。
訊息消費者。負責消費訊息,一般是後台系統負責非同步消費。乙個訊息消費者會從broker伺服器拉取訊息、並將其提供給應用程式。從使用者應用的角度而言提供了兩種消費形式:拉取式消費、推送式消費。
主題。標識一類訊息的集合,每個主題包含若干條訊息,每條訊息只能屬於乙個主題,是rocketmq進行訊息訂閱的基本單位。
**服務
RocketMQ架構原理
結合部署結構圖,描述集群工作流程 1,啟動namesrv,namesrv起來後監聽埠,等待broker produer consumer連上來,相當於乙個路由控制中心。2,broker啟動,跟所有的namesrv保持長連線,定時傳送心跳包。心跳包中包含當前broker資訊 ip 埠等 以及儲存所有t...
RocketMQ架構簡介
apache rocketmq是一款具有低延遲,高效能和可靠性,數十億容量和靈活可擴充套件性的分布式訊息傳遞和流 平台。它由四部分組成 name servers,brokers,producers和consumers。它們中的每乙個都可以在沒有單點故障的情況下進行水平擴充套件。name server...
RocketMQ集群架構與原理解析
rocketmq是一款分布式 佇列模型的訊息中介軟體,由阿里巴巴自主研發的一款適用於高併發 高可靠性 海量資料場景的訊息中介軟體。早期開源2.x版本名為metaq 15年迭代3.x版本,更名為rocketmq,16年開始貢獻到apache,經過1年多的孵化,最終成為apache頂級的開源專案,更新非...