为你推荐
作者简介
内容简介
前言
第1章 RoketMQ综述
1.1 什么是消息队列
1.2 为什么需要消息队列
1.2.1 削峰填谷
1.2.2 程序间解耦
1.2.3 异步处理
1.2.4 数据的最终一致性
1.3 常见消息队列
1.4 RocketMQ的发展史与未来
1.4.1 RocketMQ的发展史
1.4.2 Apache RocketMQ的未来
第2章 RocketMQ的生产者原理和最佳实践
2.1 生产者原理
2.1.1 生产者概述
2.1.2 消息结构和消息类型
2.1.3 生产者高可用
2.2 生产者启动流程
2.3 消息发送流程
2.4 发送消息最佳实践
2.4.1 发送普通消息
2.4.2 发送顺序消息
2.4.3 发送延迟消息
2.4.4 发送事务消息
2.4.5 发送单向消息
2.4.6 批量消息发送
2.5 生产者最佳实践总结
第3章 RocketMQ的消费流程和最佳实践
3.1 消费者概述
3.1.1 消费流程
3.1.2 消费模式
3.1.3 可靠消费
3.2 消费者启动机制
3.3 消费者的Rebalance机制
3.4 消费进度保存机制
3.5 消费方式
3.5.1 Pull消费流程
3.5.2 Push消费流程
3.6 消息过滤
3.6.1 为什么要设计过滤功能
3.6.2 RocketMQ支持消息过滤
3.7 消费者最佳实践总结
第4章 RocketMQ架构和部署最佳实践
4.1 RocketMQ架构
4.2 常用的部署拓扑和部署实践
4.2.1 常用的拓扑图
4.2.2 同步复制、异步复制和同步刷盘、异步刷盘
4.2.3 部署实践
第5章 Namesrv
5.1 Namesrv概述
5.1.1 什么是Namesrv
5.1.2 Namesrv核心数据结构和API
5.1.3 Namesrv和Zookeeper
5.2 Namesrv架构
5.2.1 Namesrv组件
5.2.2 Namesrv启动流程
5.2.3 Namesrv停止流程
5.3 RocketMQ的路由原理
5.3.1 路由注册
5.3.2 路由剔除
第6章 Broker存储机制
6.1 Broker概述
6.1.1 什么是Broker
6.1.2 Broker存储目录结构
6.1.3 Broker启动和停止流程
6.2 Broker存储机制
6.2.1 Broker消息存储结构
6.2.2 Broker消息存储机制
6.2.3 Broker读写分离机制
6.3 Broker CommitLog索引机制
6.3.1 索引的数据结构
6.3.2 索引的构建过程
6.3.3 索引如何使用
6.4 Broker过期文件删除机制
6.4.1 CommitLog文件的删除过程
6.4.2 Consume Queue、Index File文件的删除过程
6.5 Broker主从同步机制
6.5.1 主从同步概述
6.5.2 主从同步流程
6.6 Broker的关机恢复机制
6.6.1 Broker关机恢复概述
6.6.2 Broker关机恢复流程
第7章 RocketMQ特性——事务消息与延迟消息机制
7.1 事务消息概述
7.2 事务消息机制
7.2.1 生产者发送事务消息和执行本地事务
7.2.2 Broker存储事务消息
7.2.3 Broker回查事务消息
7.2.4 Broker提交或回滚事务消息
7.3 延迟消息概述
7.4 延迟消息机制
7.4.1 延迟消息存储机制
7.4.2 延迟消息投递机制
第8章 RocketMQ源代码阅读
8.1 RocketMQ源代码结构概述
8.2 RocketMQ源代码编译
8.3 如何阅读源代码
8.4 源代码阅读范例:通过消息id查询消息
第9章 RocketMQ企业最佳实践
9.1 RocketMQ落地概述
9.1.1 为什么选择RocketMQ
9.1.2 如何做RocketMQ的集群管理
9.2 RocketMQ集群管理
9.2.1 Topic管理
9.2.2 消费者管理
9.3 RocketMQ集群监控和报警
9.3.1 监控和报警架构
9.3.2 基于Grafana监控
9.3.3 基于Prometheus的报警
9.4 RocketMQ集群迁移
9.5 RocketMQ测试环境实践
9.6 RocketMQ接入实践
9.6.1 Spring接入RocketMQ
9.6.2 Python接入RocketMQ
附录
反侵权盗版声明
社区介绍
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜