幫助中心 | 我的帳號 | 關於我們

RocketMQ技術內幕(RocketMQ架構設計與實現原理第2版)

  • 作者:丁威//張登//周繼鋒|責編:韓蕊
  • 出版社:機械工業
  • ISBN:9787111690924
  • 出版日期:2021/09/01
  • 裝幀:平裝
  • 頁數:444
人民幣:RMB 109 元      售價:
放入購物車
加入收藏夾

內容大鋼
    這是一本指導讀者如何在實踐中讓RocketMQ實現高性能、高可用、高吞吐量和低延遲的著作。
    作者是RocketMQ官方認定的「優秀布道師」和技術專家,持續在RocketMQ領域深耕。本書從源碼的角度分析了RocketMQ的技術架構和實現原理,第1版獲得了良好的口碑,是RocketMQ領域的標誌性作品,第2版做了較大幅度的更新。
    Apache RocketMQ創始人/Linux OpenMessaging創始人兼主席/Alibaba Messaging開放技術負責人馮嘉高度評價並作序推薦。
    全書一共11章,邏輯上可分為3個部分:
    第1部分(第1章)
    簡單介紹了RocketMQ的設計理念與目標,以及閱讀RocketMQ源碼的方法與技巧;
    第二部分(第2?9章)
    從源碼角度對RocketMQ的技術架構以及消息發送、消息存儲、消息消費、消息過濾、順序消息、主從同步、事務消息等主要功能模塊的實現原理進行了深入分析。
    第三部分(第10?11章)
    首先從實戰的角度講了RocketMQ監控的原理、實現和應用,然後通過各種類型的大量示例展示了RocketMQ的使用技巧。

作者介紹
丁威//張登//周繼鋒|責編:韓蕊

目錄

前言
第1章  閱讀源碼前的準備
  1.1  獲取和調試RocketMQ的源碼
    1.1.1  Eclipse獲取RocketMQ源碼
    1.1.2  Eclipse調試RocketMQ源碼
    1.1.3  IntelliJ IDEA獲取RocketMQ源碼
    1.1.4  IntelliJ IDEA調試RocketMQ源碼
  1.2  RocketMQ源碼的目錄結構
  1.3  RocketMQ的設計理念和設計目標
    1.3.1  設計理念
    1.3.2  設計目標
  1.4  本章小結
第2章  RocketMQ路由中心NameServer
  2.1  NameServer架構設計
  2.2  NameServer啟動流程
  2.3  NameServer路由註冊、故障剔除
    2.3.1  路由元信息
    2.3.2  路由註冊
    2.3.3  路由刪除
    2.3.4  路由發現
  2.4  本章小結
第3章  RocketMQ消息發送
  3.1  漫談RocketMQ消息發送
    3.1.1  topic路由機制
    3.1.2  消息發送高可用設計
  3.2  認識RocketMQ消息
  3.3  生產者啟動流程
    3.3.1  初識DefaultMQProducer
    3.3.2  消息生產者啟動流程
  3.4  消息發送基本流程
    3.4.1  消息長度驗證
    3.4.2  查找主題路由信息
    3.4.3  選擇消息隊列
    3.4.4  消息發送
  3.5  批量消息發送
  3.6  本章小結
第4章  RocketMQ消息存儲
  4.1  存儲概要設計
    4.1.1  RocketMQ存儲文件的組織方式
    4.1.2  內存映射
    4.1.3  靈活多變的刷盤策略
    4.1.4  transientStorePoolEnable機制
    4.1.5  文件恢復機制
  4.2  初識消息存儲
  4.3  消息發送存儲流程
  4.4  存儲文件組織與內存映射
    4.4.1  MappedFileQueue映射文件隊列
    4.4.2  MappedFile內存映射文件
    4.4.3  TransientStorePool

  4.5  RocketMQ存儲文件
    4.5.1  CommitLog文件
    4.5.2  ConsumeQueue文件
    4.5.3  Index文件
    4.5.4  checkpoint文件
  4.6  實時更新ConsumeQueue與Index文件
    4.6.1  根據消息更新ConsumeQueue文件
    4.6.2  根據消息更新Index文件
  4.7  ConsumeQueue與Index文件恢復
    4.7.1  Broker正常停止文件恢復
    4.7.2  Broker異常停止文件恢復
  4.8  文件刷盤機制
    4.8.1  Broker同步刷盤
    4.8.2  Broker非同步刷盤
  4.9  過期文件刪除機制
  4.10  同步雙寫
  4.11  本章小結
第5章  RocketMQ消息消費
  5.1  RocketMQ消息消費概述
    5.1.1  消費隊列負載機制與重平衡
    5.1.2  併發消費模型
    5.1.3  消息消費進度反饋機制
  5.2  消息消費者初探
  5.3  消費者啟動流程
  5.4  消息拉取
    5.4.1  PullMessageService實現機制
    5.4.2  ProcessQueue實現機制
    5.4.3  消息拉取基本流程
  5.5  消息隊列負載與重新分佈機制
  5.6  消息消費過程
    5.6.1  消息消費
    5.6.2  消息確認
    5.6.3  消費進度管理
  5.7  定時消息機制
    5.7.1  load()方法
    5.7.2  start()方法
    5.7.3  定時調度邏輯
  5.8  消息過濾機制
  5.9  順序消息
    5.9.1  消息隊列負載
    5.9.2  消息拉取
    5.9.3  消息消費
    5.9.4  消息隊列鎖實現
  5.10  本章小結
第6章  RocketMQ的ACL
  6.1  什麼是ACL
  6.2  如何使用ACL
    6.2.1  Broker端開啟ACL
    6.2.2  客戶端使用ACL
  6.3  ACL實現原理

    6.3.1  Broker端ACL核心入口
    6.3.2  PlainAccessValidator詳解
    6.3.3  PlainPermissionManager詳解
    6.3.4  AclClientRPCHook詳解
  6.4  本章小結
第7章  RocketMQ主從同步機制
  7.1  RocketMQ主從同步原理
    7.1.1  HAService整體工作機制
    7.1.2  AcceptSocketService實現原理
    7.1.3  GroupTransferService實現原理
    7.1.4  HAClient實現原理
    7.1.5  HAConnection實現原理
  7.2  RocketMQ讀寫分離機制
  7.3  RocketMQ元數據同步
    7.3.1  從節點主動同步元數據
    7.3.2  主節點消息拉取主動同步消費進度
  7.4  本章小結
第8章  RocketMQ消息軌跡
  8.1  消息軌跡的引入目的和使用方法
  8.2  消息軌跡設計原理
    8.2.1  消息軌跡數據格式
    8.2.2  如何採集軌跡數據
    8.2.3  如何存儲消息軌跡數據
  8.3  消息軌跡實現原理
    8.3.1  尋找消息軌跡入口
    8.3.2  消息發送軌跡數據
    8.3.3  消息軌跡非同步轉發實現機制
  8.4  本章小結
第9章  RocketMQ主從切換
  9.1  主從切換引入目的
  9.2  Raft協議簡介
    9.2.1  Leader選舉
    9.2.2  日誌複製
  9.3  RocketMQ DLedger主從切換之Leader選主
    9.3.1  DLedgerLeaderElector核心類及核心屬性
    9.3.2  選舉狀態管理器初始化
    9.3.3  選舉狀態機狀態流轉
    9.3.4  發送投票請求與處理投票請求
    9.3.5  發送心跳包與處理心跳包
  9.4  RocketMQ DLedger主從切換之存儲實現
    9.4.1  RocketMQ DLedger核心類及核心屬性
    9.4.2  RocketMQ DLedger數據存儲協議
    9.4.3  RocketMQ DLedger索引存儲協議
  9.5  RocketMQ DLedger主從切換之日誌追加
    9.5.1  日誌追加流程概述
    9.5.2  判斷Push隊列是否已滿
    9.5.3  Leader節點日誌存儲
    9.5.4  Leader節點等待從節點日誌複製響應ACK
  9.6  RocketMQ DLedger主從切換之日誌複製
    9.6.1  日誌複製設計理念

    9.6.2  日誌複製類設計體系
    9.6.3  日誌轉發
  9.7  RocketMQ整合DLedger設計技巧與實現原理
    9.7.1  數據存儲兼容設計
    9.7.2  數據存儲兼容實現原理
    9.7.3  主從切換元數據同步機制
  9.8  RocketMQ主從切換實戰
    9.8.1  主從切換核心配置屬性
    9.8.2  搭建主從同步環境
    9.8.3  主從同步集群升級到主從切換
  9.9  本章小結
第10章  RocketMQ監控
  10.1  設計理念
  10.2  實現原理
    10.2.1  監控相關類圖
    10.2.2  監控原始數據採集流程
  10.3  監控數據採樣機制
    10.3.1  監控數據採樣
    10.3.2  根據採樣計算統計指標
  10.4  如何採集監控指標
  10.5  監控實戰應用
  10.6  本章小結
第11章  RocketMQ實戰
  11.1  消息批量發送
  11.2  消息發送隊列自選擇
  11.3  消息過濾
    11.3.1  TAG過濾模式
    11.3.2  SQL過濾模式
    11.3.3  類過濾模式
  11.4  事務消息
  11.5  Spring整合RocketMQ
  11.6  Spring Cloud整合RocketMQ
  11.7  RocketMQ監控與運維命令
    11.7.1  搭建RocketMQ監控平台rocketmq-console
    11.7.2  RocketMQ管理命令
  11.8  應用場景分析
  11.9  實戰案例
    11.9.1  RocketMQ集群線上故障縮容實戰案例
    11.9.2  RocketMQ在線擴容實戰
  11.10  本章小結
附錄A  參數說明
附錄B  RocketMQ各版本概述與升級建議

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032