作品简介

这是一本指导读者如何在实践中让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的使用技巧。

丁威,中间件技术专家,资深RocketMQ技术专家,曾获RocketMQ官方颁发的“优秀布道师”称号。现担任中通快递技术平台部资深架构师,主要负责全链路压测、消息中间件、数据同步等产品的研发与落地,拥有千亿级消息集群的运维经验,不仅实践经验丰富,而且对RocketMQ的源码有深入、系统的研究。热衷于中间件领域的技术分享,荣获“CSDN 2020博客之星”等荣誉称号,“中间件兴趣圈”公众号维护者。

张登,专家级架构师,资深RocketMQ技术专家,在分布式系统架构领域有丰富的实战经验,擅长高并发系统的架构设计与调优,主导过多家快递公司EA规划。

曾就职于拼多多、德邦等公司,现任圆通科技公司技术平台部架构负责人,负责开发框架的搭建、中间件及混合云相关技术的平台化建设。主导设计过消息分发、API网关、全链路监控、分布式文件存储等多个涉及百亿级规模的基础服务平台。“IT巅峰技术”公众号维护者,RocketMQ上海社区联合创始人。

周继锋,资深RocketMQ技术专家,知名开源分布式数据库中间件Mycat负责人。拥有10余年大型项目架构设计及实战经验,曾主导过大量分布式、微服务、大数据相关的项目。在高并发、高可用、高可扩展性、高可维护性等领域有丰富经验,对Hadoop、Spark的源码进行过深度分析并具有丰富的实战经验。曾在医学、互联网、SaaS行业担任资深架构师、技术总监等职务。现任炼数成金高级讲师,广州鼎牛网络、金石数字创始人。

作品目录

  • 内容简介
  • 作者简介
  • 推荐语
  • 前言
  • 第1章阅读源码前的准备
  • 1.1 获取和调试RocketMQ的源码
  • 1.2 RocketMQ源码的目录结构
  • 1.3 RocketMQ的设计理念和设计目标
  • 1.4 本章小结
  • 第2章RocketMQ路由中心NameServer
  • 2.1 NameServer架构设计
  • 2.2 NameServer启动流程
  • 2.3 NameServer路由注册、故障剔除
  • 2.4 本章小结
  • 第3章RocketMQ消息发送
  • 3.1 漫谈RocketMQ消息发送
  • 3.2 认识RocketMQ消息
  • 3.3 生产者启动流程
  • 3.4 消息发送基本流程
  • 3.5 批量消息发送
  • 3.6 本章小结
  • 第4章RocketMQ消息存储
  • 4.1 存储概要设计
  • 4.2 初识消息存储
  • 4.3 消息发送存储流程
  • 4.4 存储文件组织与内存映射
  • 4.5 RocketMQ存储文件
  • 4.6 实时更新ConsumeQueue与Index文件
  • 4.7 ConsumeQueue与Index文件恢复
  • 4.8 文件刷盘机制
  • 4.9 过期文件删除机制
  • 4.10 同步双写
  • 4.11 本章小结
  • 第5章RocketMQ消息消费
  • 5.1 RocketMQ消息消费概述
  • 5.2 消息消费者初探
  • 5.3 消费者启动流程
  • 5.4 消息拉取
  • 5.5 消息队列负载与重新分布机制
  • 5.6 消息消费过程
  • 5.7 定时消息机制
  • 5.8 消息过滤机制
  • 5.9 顺序消息
  • 5.10 本章小结
  • 第6章RocketMQ的ACL
  • 6.1 什么是ACL
  • 6.2 如何使用ACL
  • 6.3 ACL实现原理
  • 6.4 本章小结
  • 第7章RocketMQ主从同步机制
  • 7.1 RocketMQ主从同步原理
  • 7.2 RocketMQ读写分离机制
  • 7.3 RocketMQ元数据同步
  • 7.4 本章小结
  • 第8章RocketMQ消息轨迹
  • 8.1 消息轨迹的引入目的和使用方法
  • 8.2 消息轨迹设计原理
  • 8.3 消息轨迹实现原理
  • 8.4 本章小结
  • 第9章RocketMQ主从切换
  • 9.1 主从切换引入目的
  • 9.2 Raft协议简介
  • 9.3 RocketMQ DLedger主从切换之Leader选主
  • 9.4 RocketMQ DLedger主从切换之存储实现
  • 9.5 RocketMQ DLedger主从切换之日志追加
  • 9.6 RocketMQ DLedger主从切换之日志复制
  • 9.7 RocketMQ整合DLedger设计技巧与实现原理
  • 9.8 RocketMQ主从切换实战
  • 9.9 本章小结
  • 第10章RocketMQ监控
  • 10.1 设计理念
  • 10.2 实现原理
  • 10.3 监控数据采样机制
  • 10.4 如何采集监控指标
  • 10.5 监控实战应用
  • 10.6 本章小结
  • 第11章RocketMQ实战
  • 11.1 消息批量发送
  • 11.2 消息发送队列自选择
  • 11.3 消息过滤
  • 11.4 事务消息
  • 11.5 Spring整合RocketMQ
  • 11.6 Spring Cloud整合RocketMQ
  • 11.7 RocketMQ监控与运维命令
  • 11.8 应用场景分析
  • 11.9 实战案例
  • 11.10 本章小结
  • 附录A参数说明
  • 附录BRocketMQ各版本概述与升级建议
展开全部