国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

RocketMQ源碼學習(一)-概述

godlong_X / 756人閱讀

摘要:每個與集群中的所有節點建立長連接,定時注冊信息到所有。完全無狀態,可集群部署。本系列源碼解析主要參照原理簡介來追尋其代碼實現雖然版本不太一致但這也是能找到的最詳細的資料了接下來根據其模塊來源碼閱讀目錄如下

為什么選擇讀RocketMQ?

對MQ的理解一直不深,上周看了,還是覺得不夠深入,找個成熟的產品來學習吧,RabbitMQ是erLang寫的,Kafka是Scala寫的,非Java寫的看起來還需要補充很多知識,ActiveMQ雖然是Java,但是各方面略顯老舊,最終選擇了RocketMQ(4.1.0-incubating release)來學習.

吐槽下RocketMQ

   作為阿里巴巴捐給Apache的項目,官網上有用的資源太少了,到處都只說性能的數據,還有簡單例子,詳細的使用文檔竟然沒有了,怪不得沒有kafka流行呢,dubbo的文檔都比這強很多,話說開源產品不是擺來看和吹牛的,讓更多的人方便使用起來才是開源的核心思想吧,另外源碼中的注釋也實在太少了,還不如我司的項目的注釋齊全呢,跟JDK,Spring比起來差太多了,不過好在名字起的不錯,編碼也規范,看起來還能繼續下去.

概覽


如圖所示RocketMQ的使用由命名服務,生產者,消費者,中轉服務器組成.

Name Server 是一個幾乎無狀態節點,可集群部署,節點之間無任何信息同步

Broker 部署相對復雜,Broker 分為 Master 與 Slave,一個 Master 可以對應多個 Slave,但是一個 Slave 只能對應一個 Master,Master 與 Slave 的對應關系通過指定相同的 BrokerName,不同的 BrokerId 來定義,BrokerId為 0 表示 Master,非 0 表示 Slave。Master 也可以部署多個。每個 Broker 與 Name Server 集群中的所有節點建立長連接,定時注冊 Topic 信息到所有 Name Server。

Producer 與 Name Server 集群中的其中一個節點(隨機選擇)建立長連接,定期從 Name Server 取 Topic 路由信息,并向提供 Topic 服務的 Master 建立長連接,且定時向 Master 發送心跳。Producer 完全無狀態,可
集群部署。

Consumer 與 Name Server 集群中的其中一個節點(隨機選擇)建立長連接,定期從 Name Server 取 Topic 路
由信息,并向提供 Topic 服務的 Master、Slave 建立長連接,且定時向 Master、Slave 發送心跳。Consumer 既可以從 Master 訂閱消息,也可以從 Slave 訂閱消息,訂閱規則由 Broker 配置決定。

本系列源碼解析主要參照來追尋其代碼實現,雖然版本不太一致,但這也是能找到的最詳細的資料了.接下來根據其模塊來源碼閱讀
目錄如下:
1. Name Server
2. Producer
3. Broker
4. Consumer

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/70243.html

相關文章

  • RocketMQ源碼學習(六)-Name Server

    摘要:完全無狀態,可集群部署與集群中的其中一個節點隨機選擇建立長連接,定期從取路由信息,并向提供服務的建立長連接,且定時向發送心跳。既可以從訂閱消息,也可以從訂閱消息,訂閱規則由配置決定。 問題列表: Name Server 的作用是什么? Name Server 存儲了Broker的什么信息? Name Server 為Producer的提供些什么信息? Name Server 為Co...

    Joyven 評論0 收藏0
  • jvm原理

    摘要:在之前,它是一個備受爭議的關鍵字,因為在程序中使用它往往收集器理解和原理分析簡稱,是后提供的面向大內存區數到數多核系統的收集器,能夠實現軟停頓目標收集并且具有高吞吐量具有更可預測的停頓時間。 35 個 Java 代碼性能優化總結 優化代碼可以減小代碼的體積,提高代碼運行的效率。 從 JVM 內存模型談線程安全 小白哥帶你打通任督二脈 Java使用讀寫鎖替代同步鎖 應用情景 前一陣有個做...

    lufficc 評論0 收藏0
  • 讓你看懂的RocketMQ事務消息源碼分析(干貨)

    摘要:但是服務器又確實是收到了這條消息的,只是給客戶端的響應丟失了,所以導致的結果就是扣款失敗,成功發貨。所有的半消息都會寫在為的半消息隊列里,并且每條半消息,在整個鏈路里會被寫多次,如果并發很大且大部分消息都是事務消息的話,可靠性會存在問題。 前言 得益于MQ削峰填谷,系統解耦,操作異步等功能特性,在互聯網行業,可以說有分布式服務的地方,MQ都往往不會缺席。由阿里自研的RocketMQ更是...

    zsirfs 評論0 收藏0
  • 定能看懂的RocketMQ事務消息源碼分析(干貨)

    摘要:但是服務器又確實是收到了這條消息的,只是給客戶端的響應丟失了,所以導致的結果就是扣款失敗,成功發貨。既然消息的發送不能和本地事務寫在一起,那如何來保證其整體具有原子性的需求呢答案就是今天我們介紹的主角事務消息。 前言 得益于MQ削峰填谷,系統解耦,操作異步等功能特性,在互聯網行業,可以說有分布式服務的地方,MQ都往往不會缺席。由阿里自研的RocketMQ更是經歷了多年的雙十一高并發挑戰...

    myshell 評論0 收藏0
  • 寫這么多系列博客,怪不得找不到女朋友

    摘要:前提好幾周沒更新博客了,對不斷支持我博客的童鞋們說聲抱歉了。熟悉我的人都知道我寫博客的時間比較早,而且堅持的時間也比較久,一直到現在也是一直保持著更新狀態。 showImg(https://segmentfault.com/img/remote/1460000014076586?w=1920&h=1080); 前提 好幾周沒更新博客了,對不斷支持我博客的童鞋們說聲:抱歉了!。自己這段時...

    JerryWangSAP 評論0 收藏0

發表評論

0條評論

godlong_X

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<