17回答

0收藏

RocketMQ技术内幕:RocketMQ架构设计与实现原理(第2版) PDF 电子书

电子书 电子书 910 人阅读 | 17 人回复 | 2022-08-10

Java电子书:RocketMQ技术内幕:RocketMQ架构设计与实现原理(第2版) 格式 pdf 电子书 PDF 电子书 Java吧 java8.com
) c0 `3 x6 v' j- t
5 R" E4 D( }  w) `& G

$ B, w( y3 i" H/ n4 z. ?
编号:mudaima-P0202【Java吧 java8.com】. T% c/ {+ |/ n+ C
9 q% r5 g" _$ y, q1 ^
123.png

9 M# [0 n- T( E+ W
% l! J: H' e% @; \  ?  u4 b" nJava电子书目录:
第1章 阅读源码前的准备1
, f$ A# n* o  d7 u' F1.1 获取和调试RocketMQ的源码1" w+ x( Y/ B8 _" @( B
1.1.1 Eclipse获取RocketMQ源码1* E& U7 a( M5 `5 M. p( ?
1.1.2 Eclipse调试RocketMQ源码8' p1 l# a- W: |2 N1 }
1.1.3 IntelliJ IDEA获取RocketMQ源码14# c9 m* k, m0 Z1 [6 J. n! W/ H8 t
1.1.4 IntelliJ IDEA调试RocketMQ源码16+ t+ ?) v8 N6 C9 |: M1 K5 s
1.2 RocketMQ源码的目录结构23
' c- [$ S! z2 L( U7 n& P6 h1.3 RocketMQ的设计理念和设计目标23/ H& ~6 A. l9 q/ D
1.3.1 设计理念23
2 D6 g0 w9 l1 @% p* m1.3.2 设计目标24
' Q, V& T% ~& Z6 \5 c# L1.4 本章小结26
第2章 RocketMQ路由中心NameServer27# s2 }3 l1 R) a, _
2.1 NameServer架构设计27# B# U6 v3 W$ Y$ P6 V
2.2 NameServer启动流程29( a" H! H' O9 {
2.3 NameServer路由注册、故障剔除32$ K% I- F1 Y* B( G# U" v, o
2.3.1 路由元信息32
' T# m% ^% H, a, K: l' _& A2.3.2 路由注册35( z$ \" F! H/ E7 Y8 O
2.3.3 路由删除40$ @( j7 j* K* p. V; ]; M
2.3.4 路由发现43" I2 ~, y1 z% Y& c* K
2.4 本章小结44
第3章 RocketMQ消息发送46
. c, A; O1 J. Q* v  D3.1 漫谈RocketMQ消息发送462 G* H9 E5 {  _
3.1.1 topic路由机制47
, i. l) j8 p& l! A2 U9 z5 y! ^3.1.2 消息发送高可用设计48- C  k) t: a# Q& Z) |5 W2 g9 y
3.2 认识RocketMQ消息50& P/ f: \/ S% P# G
3.3 生产者启动流程51$ A8 m& Y4 Q( y
3.3.1 初识DefaultMQProducer513 {4 H( \: v! }0 C( U! \
3.3.2 消息生产者启动流程541 b) D; g! K, B4 B& H5 y# m$ g0 z
3.4 消息发送基本流程557 Z  k! V$ y' m; r+ ]8 O$ z
3.4.1 消息长度验证56
' }6 L0 P4 `8 t5 g5 P' K3.4.2 查找主题路由信息57
* m* p6 F: M4 m. `5 L( t3.4.3 选择消息队列60! H# m1 F' H+ }/ R& |3 V* z& r0 |
3.4.4 消息发送65
3 C% ^  ]% |+ T$ {& L3.5 批量消息发送72# c" z; k3 g9 o2 \
3.6 本章小结74
第4章 RocketMQ消息存储75$ c/ O! d8 X2 t- D. G
4.1 存储概要设计75
) o& f/ c  v! \5 |( T  ?4.1.1 RocketMQ存储文件的组织方式76( I5 l3 c9 z! h" z  y% T2 G
4.1.2 内存映射80
1 @/ f1 e% Q2 q# W  R& t0 p; e0 [( D4.1.3 灵活多变的刷盘策略81
% A/ Q$ x, {% `2 ^4.1.4 transientStorePoolEnable机制82; `: U* k5 O7 Q0 Z2 d( {2 ~+ x
4.1.5 文件恢复机制82
+ h' x( f- V+ w1 e7 ]+ c4.2 初识消息存储83  X) O2 F5 M1 H$ T+ S# a: ?6 {' S
4.3 消息发送存储流程84; y% j) G1 ^( h2 f7 H
4.4 存储文件组织与内存映射905 ?% r3 ?6 k- |" T0 W" L1 r
4.4.1 MappedFileQueue映射文件队列 906 i1 }- c8 I8 s( z! q& W; |. K; h
4.4.2 MappedFile内存映射文件924 o: U0 q2 e5 y
4.4.3 TransientStorePool99
4 z$ a( g' a& w4 |0 P  N* Y4.5 RocketMQ存储文件100
% \. `) t% R; m4.5.1 CommitLog文件101+ y" R7 k" _+ |6 u% w
4.5.2 ConsumeQueue文件1021 g" n- }0 }+ Z  g
4.5.3 Index文件106: ?6 k$ a; S" v5 p4 h" P3 o* Y
4.5.4 checkpoint文件110
1 e, K; z+ A& ?- V4.6 实时更新ConsumeQueue与Index文件1112 c* \7 }, ]% [6 O9 B. I' h
4.6.1 根据消息更新ConsumeQueue文件1130 V1 a* u. K2 _, l4 n6 O8 X
4.6.2 根据消息更新Index文件114+ e( b# q% d8 P
4.7 ConsumeQueue与Index文件恢复115
9 p2 C% B5 m6 M# }, \& d/ L1 o0 {! T4.7.1 Broker正常停止文件恢复1180 `" `! p* Q% t5 _
4.7.2 Broker异常停止文件恢复1202 c& t' C3 y; U  o# X# J8 ^" W5 g
4.8 文件刷盘机制1212 i( s, K6 h' H6 J* B
4.8.1 Broker同步刷盘122$ U% Y8 F! D- p; l. f
4.8.2 Broker异步刷盘125
7 Y+ H8 l9 L$ C5 n2 K$ a4.9 过期文件删除机制128/ ^# E8 g$ R; v1 K' U
4.10 同步双写132/ K( q* R1 o5 U; _' u# _* l6 ]
4.11 本章小结136
第5章 RocketMQ消息消费137; d  a( _6 D6 E7 H- G
5.1 RocketMQ消息消费概述137* ^- n$ ]7 \: o
5.1.1 消费队列负载机制与重平衡138
" m1 ^1 i) w4 {  m4 j5.1.2 并发消费模型139* u4 D1 @; ^% K3 x3 a  G- f
5.1.3 消息消费进度反馈机制139( f; P9 X7 o$ A- y; d0 ^8 |  z
5.2 消息消费者初探141, P. X4 |8 E8 I# R2 a+ O
5.3 消费者启动流程143
7 X3 H; Y. n. \. K5.4 消息拉取146
3 F! ]* e+ G5 Q0 t% ^3 y" B5.4.1 PullMessageService实现机制147
2 q4 }$ B0 R8 @, v: P5 B6 M1 X5.4.2 ProcessQueue实现机制149
3 E1 D8 m& R7 I1 q" V5.4.3 消息拉取基本流程150
- @( V# M( o  t5.5 消息队列负载与重新分布机制167
( D7 g( b4 F7 R& {5.6 消息消费过程175
, M& r2 P# I( I( i+ P4 M# X5.6.1 消息消费176
9 S1 }3 C( W; f7 q/ M2 w* R4 E5.6.2 消息确认180% i2 Q$ s2 O. V9 F( l# [
5.6.3 消费进度管理184- {: j' T4 b! C3 I1 L1 k6 J6 m
5.7 定时消息机制189$ s# L( X: M! O- m) t$ S7 v
5.7.1 load()方法1903 ]& f1 S- K6 ^+ o/ f$ |
5.7.2 start()方法190
( @. n+ |8 v7 g* Y& L( S! I( R* R5.7.3 定时调度逻辑1927 I1 S* C8 {; {$ U3 F3 U
5.8 消息过滤机制194
  v7 k0 G; k* ]; Q* k+ b5.9 顺序消息1991 x" A% D% ?$ P% ~' a) C
5.9.1 消息队列负载199
* j" r; M1 F3 F9 S) K5.9.2 消息拉取200
) _5 i# {+ J% H; o5.9.3 消息消费201: L$ J" M9 z* F9 y' f( {$ Y. E
5.9.4 消息队列锁实现208# X+ O- N5 `) Y7 @, w3 d" L
5.10 本章小结209
第6章 RocketMQ的ACL2106 S& _5 ?" I# c" S4 c) ?
6.1 什么是ACL210: K; }1 R% d. P2 N' f- ~
6.2 如何使用ACL211
; Y: b* w# z$ T6 Q: R1 L1 R6.2.1 Broker端开启ACL211: R  l. X7 Z6 O. z  l( N
6.2.2 客户端使用ACL212
& c  z1 O- O& o# K& }! c% B6.3 ACL实现原理2143 u5 ?# F$ [9 {% G9 d
6.3.1 Broker端ACL核心入口2147 o- r' \. p4 l1 \# y  a# X4 p
6.3.2 PlainAccessValidator详解2160 A! n  _+ W9 s$ o  b* I9 D5 h4 E
6.3.3 PlainPermissionManager详解2200 ^$ [) E; l8 q& o; h% g- g
6.3.4 AclClientRPCHook详解228
# ?( p% Q# H2 G5 O6.4 本章小结231
第7章 RocketMQ主从同步机制232
# z* ^) V3 }0 g- C4 F7.1 RocketMQ主从同步原理232
- a  t0 C/ k0 F8 g  I- ]7 q7.1.1 HAService整体工作机制233
2 q9 g- w9 k+ b1 \7 F! w' ~7.1.2 AcceptSocketService实现原理233, \, }$ Y  K- I% `! z
7.1.3 GroupTransferService实现原理235- N# L% a0 L$ ~6 [$ X1 ?3 |
7.1.4 HAClient实现原理236, t( e/ N7 L& y2 p( c* U. W
7.1.5 HAConnection实现原理239
: p. N9 I. I9 Q+ Z. C7.2 RocketMQ读写分离机制245
5 H! d: `7 p4 R3 T. T: h7.3 RocketMQ元数据同步248! a% V) Y) _# k! b3 l* {$ g' s
7.3.1 从节点主动同步元数据249
$ K: R2 f% C# U, X" O1 s$ y/ g. k7.3.2 主节点消息拉取主动同步消费进度2503 y! e: l$ M2 V$ c( C. O
7.4 本章小结251
第8章 RocketMQ消息轨迹252
; b* @* m0 X& i9 f0 H4 N) y6 Y8.1 消息轨迹的引入目的和使用方法252
8 D# \! C* ~! H! o8.2 消息轨迹设计原理255: `) s$ x; p: Z) C
8.2.1 消息轨迹数据格式255. ]: ^! x  o$ t1 |
8.2.2 如何采集轨迹数据256
; v8 P. a) J3 C( V& u8.2.3 如何存储消息轨迹数据2577 o: t; ], L' Q. r& L" n) M; c1 Z
8.3 消息轨迹实现原理257
* o6 `$ g' P+ r8.3.1 寻找消息轨迹入口257
0 l' q1 |) V- E  s7 l8.3.2 消息发送轨迹数据259" o! a. e# x5 Z6 D3 T+ u
8.3.3 消息轨迹异步转发实现机制261% q. f+ F: K" A* `% y: ~+ o
8.4 本章小结265
第9章 RocketMQ主从切换2669 C/ y4 V$ s9 r7 k( [  [  H1 ?) P
9.1 主从切换引入目的266! J# m  F' O$ F" ^/ x2 v
9.2 Raft协议简介267% S% ]. v) ?2 z8 c: _+ R7 d/ n) P4 R% B
9.2.1 Leader选举267) E3 b1 |' Q1 E$ A* g% U
9.2.2 日志复制2687 K- s+ B- F" r8 H0 l
9.3 RocketMQ DLedger主从切换之Leader选主269+ X# J$ Z- e( S
9.3.1 DLedgerLeaderElector核心类及核心属性270
: M6 k% e# ]$ o2 l4 U* C) o9.3.2 选举状态管理器初始化271
  F1 Y- A% E% p7 ]9.3.3 选举状态机状态流转273
5 G& t- l3 Y+ P3 R: o! E9.3.4 发送投票请求与处理投票请求280
) V* i0 g% X7 g! c' N% h9.3.5 发送心跳包与处理心跳包2834 k% w, \5 `4 a1 Z# v2 I# E
9.4 RocketMQ DLedger主从切换之存储实现288& |- B/ N, z7 s; X/ w6 j
9.4.1 RocketMQ DLedger核心类及核心属性288$ G& y5 V/ x; p! q3 ?
9.4.2 RocketMQ DLedger数据存储协议290# l' k& r3 h* @3 `( R
9.4.3 RocketMQ DLedger索引存储协议291
: |! J& l' t$ s& f1 u9.5 RocketMQ DLedger主从切换之日志追加291$ j+ D8 x6 d6 `& S/ M" I& l
9.5.1 日志追加流程概述291# N0 |9 J- {& d( _* }
9.5.2 判断Push队列是否已满2930 E. h0 [( H7 Z) w! s
9.5.3 Leader节点日志存储293
% j  U; T  c: m& @9.5.4 Leader节点等待从节点日志复制响应ACK2988 J* {/ ?( P' ^' T$ o
9.6 RocketMQ DLedger主从切换之日志复制299
' ^# _6 h6 i* G$ q7 o% P9.6.1 日志复制设计理念300
, E1 v! h0 j. n9.6.2 日志复制类设计体系301
. ?) p' T* K5 M. S2 [) }, f" }9.6.3 日志转发303
& j  {$ W! s  Z9.7 RocketMQ整合DLedger设计技巧与实现原理326
% H$ \* Y) V( j* O- a9 s: b9.7.1 数据存储兼容设计327
  T3 m0 B8 `/ a$ d3 E, t9.7.2 数据存储兼容实现原理328
, ~! D" R; D2 m) P% o$ V9.7.3 主从切换元数据同步机制3372 K! E2 k; h: F- k8 [
9.8 RocketMQ主从切换实战344
( z- K# w: Y( ]1 `9.8.1 主从切换核心配置属性344; T/ G  a/ |1 Q7 |7 |
9.8.2 搭建主从同步环境344
% Y( r! i' Y# E8 |9 C2 ~9.8.3 主从同步集群升级到主从切换346* i- y3 ~1 n) f% m+ m8 L& @
9.9 本章小结350
第10章 RocketMQ监控352! |$ _' c7 Z/ B( ~
10.1 设计理念352" P/ ]7 `  M$ q( h
10.2 实现原理353
; @$ C$ |3 @, f, c4 D  V10.2.1 监控相关类图353
" e9 @6 ^0 `/ u) j" l. g" L10.2.2 监控原始数据采集流程355( I& G' n9 u+ m" i* @+ C. z6 V- b
10.3 监控数据采样机制3561 f  r. L5 P' O; _$ p, }3 c: B
10.3.1 监控数据采样356$ B+ J$ r9 {) T; c; j0 F$ n
10.3.2 根据采样计算统计指标357) n- z9 T  x" b  c
10.4 如何采集监控指标3594 P; d. c0 j4 x6 q+ _) q8 _
10.5 监控实战应用360
  ]1 B- o9 `2 ?0 l0 W10.6 本章小结365
第11章 RocketMQ实战366
$ q( r' q: r, V. Q# [" @! B& U. P9 K11.1 消息批量发送366
/ x" b7 t7 S8 H4 w; L11.2 消息发送队列自选择367) a6 g5 f% {" o
11.3 消息过滤3681 v. D, P) N4 h) e
11.3.1 TAG过滤模式368
" b$ m5 I) n+ p0 Z8 Y+ ?8 F11.3.2 SQL过滤模式3686 S2 j7 Z! X6 ]) l$ T
11.3.3 类过滤模式369
# r' ^  }1 |8 j: h- }  q* e11.4 事务消息371
7 K- k' A7 b) i. i11.5 Spring整合RocketMQ375
, z' ?4 j" L# U& y( y& X: g: i) p11.6 Spring Cloud整合RocketMQ376& X! w/ E4 `5 h
11.7 RocketMQ监控与运维命令384
) X& Y4 ~0 g% U5 K9 M$ m. n- |11.7.1 搭建RocketMQ监控平台rocketmq-console384
% }* H1 f4 n3 t11.7.2 RocketMQ管理命令387
+ `' R2 {/ j: x0 `" J6 l. @# \11.8 应用场景分析423. h- U4 b" @/ u
11.9 实战案例424# ]$ h& V. t! D
11.9.1 RocketMQ集群线上故障缩容实战案例424* `5 }5 j2 u* ^* U& e8 V4 Y
11.9.2 RocketMQ在线扩容实战427
3 ?7 |6 Z) z  z9 k0 S- ^11.10 本章小结4302 {: i( s, {3 e; T4 K& L
附录 A 参数说明431* P0 L. n  {1 w% h5 p
附录B RocketMQ各版本概述与升级建议436

, q) G5 I4 v6 ], i* e  E
百度云盘下载地址:
$ j' D+ k: J' m" w2 K, v& {6 }
游客,如果您要查看本帖隐藏内容请回复

+ H' [# o- {& |: m7 Z提取码:
a4vx
! Y9 `5 ~! B0 U
1 B8 I, v% T6 V! K& t+ ]" E( L9 I. L* F3 U/ f6 _

# Z6 v% A- v) ^- k. ?) ?# o/ ]
关注下面的标签,发现更多相似文章
分享到:
回复

使用道具 举报

回答|共 17 个

鹰帅

发表于 2022-8-11 09:55:42 | 显示全部楼层

架构设计与实现原理
回复

使用道具 举报

烟火

发表于 2022-8-11 14:37:38 | 显示全部楼层

好好学习天天向上
回复

使用道具 举报

luoyepiaoling

发表于 2022-8-15 09:18:37 | 显示全部楼层

好好学习天天向上
回复

使用道具 举报

Joker_zhao

发表于 2022-8-15 14:18:49 | 显示全部楼层

123123中中中中中中中中中
回复

使用道具 举报

wanximuzi

发表于 2022-8-15 23:45:57 | 显示全部楼层

提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

gogogo323

发表于 2022-8-21 14:38:23 来自手机 | 显示全部楼层

哈哈哈哈哈哈哈哈/::>/::>
回复

使用道具 举报

wsh900221

发表于 2022-8-30 09:10:25 | 显示全部楼层

提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

java7430

发表于 2022-9-20 13:10:33 | 显示全部楼层

提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

gova

发表于 2022-9-25 15:06:11 | 显示全部楼层

好好学习天天向上
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则