首页  软件  游戏  图书  电影  电视剧

请输入您要查询的图书:

 

图书 APACHE ROCKETMQ 进阶之路
内容
编辑推荐
本书告别枯燥的源码解读,以生动的案例、上百张手绘图逐层揭秘RocketMQ的原理,真正意义上做到了深入浅出;如果只推荐一本书去学习RocketMQ,本书将是最合适的一本。10年大厂实战经验沉淀、业内大咖倾情推荐
内容推荐
本书以Apache RocketMQ 4.9.5(编写本书时近期新的4.x版本)为基础,从Apache RocketMQ 的实际使用、原理剖析,大规模消息集群下企业级落地的实践以及所面临的挑战,逐一由浅入深地进行讲解。
全书分3篇,共16章。基础篇包含第1~4章,主要讲解Apache RocketMQ 入门以及如何掌握Apache RocketMQ 的基础使用。原理篇包含第5~12章,主要讲解了消费原理、负载均衡原理、顺序消息原理等核心的RocketMQ部分。进阶篇包含第13~16章,主要讲解消息幂等、双活设计等进阶为架构师必须掌握的内容。讲解过程中抛弃了传统的源码解析这种较枯燥的手段,而是更多地利用以下方式帮助读者更快、更轻松地接受Apache RocketMQ的原理:通过近百张原创的手绘图,形象地描述Apache RocketMQ 的运作过程、原理;通过与Kafka、RabbitMQ等成熟的消息中间件产品做对比的方式,有助于读者对相关知识触类旁通,举一反三;每章都有思考题,以便于读者总结思考所学内容,进行灵活运用。随书附赠示意代码,获取方式见封底。
本书适合对Apache RocketMQ感兴趣的读者阅读。本书的内容能帮助读者快速地从入门到精通,并借助书中所总结的实践经验,在工作中更好地设计出高并发、高可用的后台系统,支撑互联网业务的高速发展。
目录
基础篇
第1章 Apache RocketMQ 综述/
1.1为什么高并发系统都绕不开消息中间件/
1.1.1初识互联网的架构/
1.1.2大型互联网系统遇到的共性挑战/
1.1.3为什么要选择 Apache RocketMQ/
1.2了解 Apache RocketMQ/
1.2.1RocketMQ简介/
1.2.2RocketMQ发展史/
1.2.3RocketMQ在“双十一”的表现/
1.3RocketMQ 核心概念与特性/
1.3.1RocketMQ组件/
1.3.2术语/
1.3.3RocketMQ重要特性/
1.4RocketMQ初体验/
1.4.1安装RocketMQ/
1.4.2启动Name Server/
1.4.3启动Broker/
1.4.4关闭Broker和Name Server/
1.4.5验证收发消息/
1.5本章小结/
1.6思考题/
第2章 RocketMQ 消息生产/
2.1生产者概述/
2.1.1生产者实例/
2.1.2生产者组/
2.2认识RocketMQ消息/
2.2.1消息结构/
2.2.2消息类型/
2.3消息发送实战/
2.3.1发送普通消息/
2.3.2发送批量消息/
2.3.3发送顺序消息/
2.3.4发送延时消息/
2.3.5发送事务消息/
2.4消息的三种发送模型/
2.4.1发送同步消息/
2.4.2发送异步消息/
2.4.3发送单向消息/
2.5生产者很好实践/
2.5.1不同消息类型的选择/
2.5.2不同消息发送模型的选择/
2.5.3发送消息的实战建议/
2.6本章小结/
2.7思考题/
第3章 RocketMQ消息消费/
3.1消费者概述/
3.1.1消费者实例/
3.1.2消费者组/
3.2初探消费流程/
3.2.1消息存储与消息队列的关系/
3.2.2消息消费与消息队列的关系/
3.3消费实战/
3.3.1Push并发消费/
3.3.2Push顺序消费/
3.3.3Pull Subscribe消费/
3.3.4Pull Assign消费/
3.3.5集群模式与广播模式/
3.3.6标签过滤 /
3.3.7SQL92过滤 /
3.3.8消息重试和死信队列/
3.4消息消费很好实践/
3.4.1消费日志/
3.4.2消费幂等/
3.4.3提高消费并行度/
3.4.4批量消费方式/
3.4.5大量堆积时跳过历史消息/
3.4.6规范消费者组名/
3.4.7订阅关系保持一致/
3.4.8并发消费和顺序消费的选择/
3.4.9起始消费位点的设置/
3.4.10关于异步消费/
3.4.11消费状态处理/
3.5本章小结/
3.6思考题/
第4章 RocketMQ运维与管理/
4.1RocketMQ Admin Tool/
4.1.1认识RocketMQ管理工具/
4.1.2使用RocketMQ管理工具/
4.2RocketMQ Dashboard/
4.2.1Docker方式安装 RocketMQ Dashboard/
4.2.2源码方式安装 RocketMQ Dashboard/
4.2.3使用 RocketMQ Dashboard/
4.3主题管理实践/
4.3.1主题分类/
4.3.2主题命名/
4.3.3队列数管理/
4.4测试环境实践/
4.4.1独立集群模式/
4.4.2独立主题模式/
4.4.3Tag路由模式/
4.4.4三种模式的优劣对比/
4.5生产环境运维实践/
4.5.1集群扩容/
4.5.2集群迁移/
4.6RocketMQ 常见部署架构/
4.6.1单主模式/
4.6.2主备模式的架构/
4.6.3多主模式的架构/
4.6.4同城灾备模式/
4.7本章小结/
4.8思考题/
原理篇
第5章 RocketMQ消费原理/
5.1理解RocketMQ的推模式/
5.1.1Push 模式/
5.1.2Pull 模式/
5.1.3Push模式与Pull模式的优劣对比/
5.2了解长轮询/
5.2.1短轮询/
5.2.2长轮询/
5.3RocketMQ长轮询实现/
5.3.1客户端增大超时时间/
5.3.2服务端Hold住无数据的请求/
5.3.3RocketMQ长轮询小结/
5.4RocketMQ的消息拉取优化细节/
5.4.1客户端请求异步化/
5.4.2服务端超时处理细节/
5.4.3服务端多线程交互/
5.4.4合并多个 Pull 请求/
5.5消费者线程模型/
5.5.1消费流程涉及的关键线程/
5.5.2消费线程池/
5.6消费进度管理/
5.6.1消费进度存储/
5.6.2初次启动从哪里消费/
5.7消息ACK机制/
5.7.1AT LEAST ONCE保证/
5.7.2消息消费失败进度管理/
5.8消息失败重试设计/
5.8.1重试主题/
5.8.2延迟重试/
5.9消息消费异常处理/
5.9.1消费超时/
5.9.2卡进度的保护处理/
5.9.3消息重发与顺序性的矛盾/
5.10本章小结/
5.11思考题/
第6章 RocketMQ负载均衡与消费模式/
6.1负载均衡综述/
6.2消息生产负载均衡/
6.2.1消息生产负载均衡概述/
6.2.2消息生成负载均衡的原理/
6.3消息消费负载均衡/
6.3.1无中心的队列负载均衡/
6.3.2无中心负载均衡的核心源码/
6.3.3消费者负载均衡策略/
6.4无中心负载均衡带来的弊端/
6.5RocketMQ广播消息原理/
6.5.1JMS的消息类型/
6.5.2主流消息中间件对发布/订阅模式的支持/
6.5.3RocketMQ对发布/订阅模式的支持/
6.5.4广播模式下的可靠性及顺序性处理/
6.6本章小结/
6.7思考题/
第7章 RocketMQ存储设计/
7.1RocketMQ消息存储概览/
7.1.1文件构成/
7.1.2消息存储过程/
7.2RocketMQ存储与检索/
7.2.1RocketMQ存储对比Kafka存储/
7.2.2RocketMQ存储设计对比Kafka的优势/
7.3CommitLog文件/
7.3.1CommitLog文件结构/
7.3.2CommitLog抽象模型/
7.3.3CommitLog文件组成/
7.4ConsumeQueue文件/
7.4.1ConsumeQueue文件结构/
7.4.2ConsumeQueue文件组成/
7.5IndexFile文件/
7.5.1IndexFile概览/
7.5.2IndexFile文件结构/
7.5.3IndexFile文件组成/
7.6本章小结/
7.7思考题/
第8章 RocketMQ消息高可靠的设计/
8.1消息中间件如何做到消息高可靠/
8.1.1消息中间件三个核心环节/
8.1.2消息中间件的高可靠承诺/
8.2消息生产的高可靠/
8.2.1消息生产过程可能遇到的异常/
8.2.2应对消息生产的异常/
8.3消息消费的高可靠/
8.3.1消费高可靠的保证/
8.3.2消费高可靠的实践建议/
8.4消息存储的高可靠/
8.4.1消息刷盘策略/
8.4.2消息同步策略/
8.4.3消息的读写高可用/
8.4.4消息高可靠小结/
8.4.5多副本的DLedger/
8.5本章小结/
8.6思考题/
第9章 RocketMQ消息过滤原理/
9.1认识消息过滤/
9.1.1消息过滤的场景/
9.1.2消息过滤的方式/
9.1.3客户端过滤VS服务端过滤/
9.1.4服务端过滤的必要性/
9.1.5RocketMQ的消息过滤模式/
9.2标签过滤模式的使用及原理/
9.2.1标签过滤模式的使用/
9.2.2标签服务端过滤原理/
9.3类过滤模式原理/
9.4SQL92属性过滤的使用及原理/
9.4.1属性过滤的使用/
9.4.2开启属性过滤/
9.4.3属性过滤的原理/
9.4.4属性过滤可替换类过滤模式/
9.5本章小结/
9.6思考题/
第10章 RocketMQ顺序消息原理/
10.1消息中间件的时序性挑战/
10.2Kafka顺序消息的解决方案/
10.2.1Kafka消息存储和消息投递的顺序性/
10.2.2Kafka消息生产的顺序性/
10.2.3Kafka消息消费的顺序性/
10.3RocketMQ顺序消息的解决方案/
10.3.1RocketMQ的消息存储顺序性实现/
10.3.2RocketMQ的消息生产顺序性实现/
10.3.3RocketMQ的消息消费顺序性实现/
10.4分区顺序VS全局顺序/
10.5RocketMQ顺序消息的缺陷/
10.5.1分区热点问题/
10.5.2扩容与顺序性的冲突/
10.5.3顺序性与可用性的冲突/
10.6本章小结/
10.7思考题/
第11章 RocketMQ事务性消息原理/
11.1分布式场景下的ACID/
11.1.1认识ACID/
11.1.2分布式场景下的事务挑战/
11.2CAP VS BASE/
11.2.1认识 CAP 三角/
11.2.2认识BASE理论/
11.3分布式一致性方案/
11.3.1一致性概念解析/
11.3.2强一致性方案/
11.3.3弱一致性方案/
11.3.4最终一致性方案/
11.4异步队列方案的挑战/
11.4.1场景一:服务重启导致消息发送失败/
11.4.2场景二:服务重启导致消息发送失败/
11.4.3异步队列方案小结/
11.5RocketMQ事务消息的实现/
11.5.1RocketMQ事务消息实现的关键流程/
11.5.2RocketMQ事务消息 VS 可靠消息模式/
11.5.3RocketMQ事务消息的存储/
11.5.4RocketMQ事务回查及状态/
11.6RocketMQ事务消息与Kafka事务消息的对比/
11.6.1Kafka想要解决的Exactly-Once是什么/
11.6.2Kafka事务消息的表现/
11.7本章小结/
11.8思考题/
第12章 RocketMQ延迟消息原理/
12.1互联网场景下延迟任务的常见场景/
12.2使用定时任务处理延迟任务的一些问题/
12.2.1时效性/
12.2.2扫描性能/
12.2.3单一周期处理量问题/
12.3认识RocketMQ延迟消息/
12.3.1RocketMQ延迟消息的优点/
12.3.2RocketMQ 延迟消息的代码示意/
12.4延迟消息实现原理/
12.4.1RocketMQ延迟消息存储实现/
12.4.2RocketMQ延迟消息转存/
12.4.3延迟主题的队列/
12.4.4延迟消息的调度/
12.4.5调度的性能问题/
12.4.6分队列调度解决投递顺序问题/
12.4.7调度的性能优化/
12.4.8调度的延迟/
12.5实现任意精度的定时消息/
12.5.1简易逼近法/
12.5.2很优逼近法模拟任意时刻的定时消息/
12.5.3代理定时消息方案/
12.5.45.x版本定时消息展望/
12.6本章小结/
12.7思考题/
进阶篇
第13章 大型系统中实现消息幂等/
13.1为什么消息中间件的消息会重复/
13.1.1发送的高可靠引起的消息重复/
13.1.2存储的高可靠引起的消息重复/
13.1.3消息投递的高可靠引起的消息重复/
13.2消息幂等/
13.2.1at least once/
13.2.2exactly once/
13.3基于业务逻辑实现消息幂等/
13.3.1基于数据库的去重实现/
13.3.2基于数据库去重的并发问题/
13.3.3加锁解决基于数据库去重的并发问题/
13.3.4乐观锁解决基于数据库去重的并发问题/
13.3.5基于业务逻辑实现消息幂等的局限性/
13.4基于数据库事务的消息表实现消息幂等/
13.4.1基于数据库事务的消息表的实现/
13.4.2基于数据库事务的消息表的局限性/
13.5基于无锁的消息表的通用幂等方案/
13.5.1复杂业务消费场景/
13.5.2基于消息幂等表的非事务方案/
13.5.3消息表的设计/
13.5.4无锁消息表的代码实现/
13.6通用消息幂等的局限性/
13.6.1消费过程的局限性/
13.6.2通用幂等解决方案的价值/
13.6.3关于通用幂等方案的实践建议/
13.7本章小结/
13.8思考题/
第14章 复杂场景下的消息丢失问题/
14.1跨集群场景下消息的丢失问题/
14.1.1多集群使用的场景/
14.1.2多集群场景下消息窜乱揭秘/
14.1.3多集群使用下的很好实践/
14.2队列分配错误导致的消息丢失/
14.2.1队列分配的奇怪现象/
14.2.2消费者负载均衡的过程/
14.2.3订阅关系不同引发的问题/
14.3标签订阅不同引发的消息丢失/
14.4本章小结/
14.5思考题/
第15章 应对消息大量堆积/
15.1消息堆积发生的原因及影响/
15.1.1消息堆积的场景/
15.1.2消息堆积的危害/
15.2消息堆积了,哪些扩容手段是有用的?/
15.2.1消费者服务扩容对堆积的影响/
15.2.2消费者线程扩容对堆积的影响/
15.2.3Broker队列数扩容/
15.2.4Broker扩容/
15.2.5下游服务扩容/
15.3消息堆积的一些定位手段/
15.3.1定位消费瓶颈/
15.3.2定位数据倾斜/
15.3.3定位队列分配数量/
15.4处理消息堆积的实践建议/
15.4.1快速扩容/
15.4.2快速恢复新消息的消费/
15.4.3恢复历史消息的消费/
15.5预防消息堆积的实践建议/
15.5.1合理地规划消费并行度/
15.5.2避免热点数据/
15.5.3适当丢弃过老的消息/
15.6本章小结/
15.7思考题/
第16章 大型互联网系统双活RocketMQ集群架构/
16.1常见的同城双活后台架构/
16.2同城双机房的RocketMQ部署架构/
16.2.1简单的同城双机房RocketMQ部署架构/
16.2.2同城双机房高可靠的RocketMQ部署架构/
16.2.3同城双机房的RocketMQ部署架构(写高可靠)/
16.3同城双活的RocketMQ部署架构/
16.3.1简单的同城双活部署架构/
16.3.2同城双活的技术挑战/
16.3.3基于全局路由的同城双活部署架构/
16.3.4基于自定义负载均衡策略的同城双活部署架构/
16.4本章小结/
16.5思考题/
附录思考题参考答案/
标签
缩略图
书名 APACHE ROCKETMQ 进阶之路
副书名
原作名
作者 林俊杰
译者
编者
绘者
出版社 机械工业出版社
商品编码(ISBN) 9787111766551
开本 16开
页数 336
版次 1
装订
字数 425
出版时间 2024-11-01
首版时间
印刷时间 2024-11-01
正文语种
读者对象
适用范围
发行范围
发行模式 实体书
首发网站
连载网址
图书大类 教育考试-考试-计算机类
图书小类
重量
CIP核字
中图分类号 TP316.4
丛书名
印张
印次 1
出版地
整理
媒质
用纸
是否注音
影印版本
出版商国别
是否套装
著作权合同登记号
版权提供者
定价
印数
出品方
作品荣誉
主角
配角
其他角色
一句话简介
立意
作品视角
所属系列
文章进度
内容简介
作者简介
目录
文摘
安全警示 适度休息有益身心健康,请勿长期沉迷于阅读小说。
随便看

 

兰台网图书档案馆全面收录古今中外各种图书,详细介绍图书的基本信息及目录、摘要等图书资料。

 

Copyright © 2004-2025 xlantai.com All Rights Reserved
更新时间:2025/5/12 15:41:08