rocketmq學習雜記

易曉雙發表於2017-12-28

rocketmq總體架構圖,來源於 https://rocketmq.apache.org/docs/rmq-arc/,可參考:

rocketmq學習雜記
1.本地部署遇到的問題: rocketmq預設配置對記憶體要求較高,啟動會有問題, /xxxx/distribution/target/apache-rocketmq/bin/runserver.sh /xxxx/distribution/target/apache-rocketmq/bin/runbroker.sh

2.雜記 參考:http://blog.csdn.net/quhongwei_zhanqiu/article/details/39142693

1.訊息過濾,在broker中,可以按照consumer的要求做過濾,較少了網路傳輸。

2.rocketmq使用長輪詢的方式,保證訊息的實時性。 ** 基於 拉模式 拉取訊息,consumer做負載均衡並通過長輪詢向broker拉訊息。

3.producer向佇列傳送訊息,佇列集合 稱為 Topic,

4.rocketmq的網路部署特點: 1.name server 是一個無狀態節點,可叢集部署,節點之間無任何資訊同步。 nameserver啟動後,每隔10s輪詢 查詢清理失效的broker連結。

2.broker 有主備之分,
3.producer 可與 name server叢集中的一個節點(隨機選擇) 建立 長連線,定期從 name server 取 topic 路由資訊,並向提供 topic服務的master 建立長連線,且定時向 master 傳送心跳,
  producer 完全無狀態,叢集部署。
  consumer也是與 nameserver 的一個節點 建立 長連結,定期從 nameserver 取 topoic資訊,並向提供 topic服務的master 建立長連結,且定時傳送心跳,
4.  consumer:
拉取消費的方式:
  1.push:consumer通過長輪詢 拉取訊息後,回撥MessageListener介面實現完成消費,應用系統只要MessageListener完成業務邏輯即可。
    這種模式用的最多。
  2.pull:完全由業務系統去控制,定時拉取訊息,指定佇列消費
啟動流程:
  1.訂閱topic,Map儲存top對應的訂閱物件。
  2.註冊訊息消費的監聽器,複製程式碼

相關文章