一、RocketMQ 简介
1.1 什么是 RocketMQ
1.2 RocketMQ 的历史
1.3 RocketMQ 的特点
- 高性能
- 高可用
- 低延迟
- 海量堆积
- 分布式
- 事务消息
1.4 RocketMQ vs Kafka vs RabbitMQ
1.5 RocketMQ 应用场景
二、RocketMQ 核心概念
2.1 Producer(生产者)
2.2 Consumer(消费者)
2.3 NameServer(名称服务器)
2.4 Broker(代理服务器)
2.5 Topic(主题)
2.6 Message Queue(消息队列)
2.7 Message(消息)
2.8 Message Group(消息组)
2.9 Offset(偏移量)
三、RocketMQ 架构
3.1 整体架构
3.2 部署架构
3.3 数据存储架构
3.4 集群架构
四、RocketMQ 安装部署
4.1 环境准备
4.2 源码编译
4.3 单机部署
4.4 集群部署
4.5 Docker 部署
4.6 配置文件详解
4.7 启动和停止
五、RocketMQ 命令行工具
5.2 MQAdmin 命令
- Topic 管理
- Broker 管理
- 消息查询
- 消息发送
六、RocketMQ 生产者
6.1 生产者工作原理
6.2 消息发送方式
6.3 消息类型
6.4 发送策略
6.5 失败重试
6.6 批量发送
七、RocketMQ 消费者
7.1 消费者模型
7.2 消费模式
7.3 消费者组
7.4 消息过滤
7.5 消息顺序消费
7.6 消息重试
7.7 死信队列
7.8 Offset 管理
八、RocketMQ 消息类型
8.1 普通消息
8.2 顺序消息
8.3 延迟消息
8.4 事务消息
8.5 批量消息
九、RocketMQ 存储机制
9.1 消息存储
- CommitLog
- ConsumeQueue
- IndexFile
9.2 存储结构
9.3 刷盘机制
9.4 主从复制
9.5 消息清理
十、RocketMQ 高可用
10.1 NameServer 高可用
10.2 Broker 高可用
- Master-Slave 模式
- 多 Master 模式
- 多 Master 多 Slave 模式
10.3 读写分离
10.4 故障切换
十一、RocketMQ 性能优化
11.1 Producer 优化
11.2 Consumer 优化
11.3 Broker 优化
11.4 网络优化
11.5 JVM 优化
11.6 操作系统优化
十二、RocketMQ 监控
12.1 自带监控
12.2 RocketMQ Console
12.3 Prometheus 监控
12.4 监控指标
12.5 告警配置
十三、RocketMQ 安全
13.1 ACL 权限控制
13.2 TLS 加密
13.3 访问控制
十四、RocketMQ 客户端开发
14.1 Java 客户端
- Producer API
- Consumer API
- 配置说明
14.2 Spring Boot 集成
14.3 Go 客户端
14.4 Python 客户端
十五、RocketMQ 实战案例
15.1 订单系统
15.2 日志收集
15.3 分布式事务
15.4 削峰填谷
十六、RocketMQ 最佳实践
16.1 Topic 设计
16.2 Tag 设计
16.3 生产者配置
16.4 消费者配置
16.5 集群规划
十七、RocketMQ 常见问题
17.1 消息丢失
17.2 消息重复
17.3 消息顺序
17.4 消息积压
17.5 消费失败
17.6 性能问题
十八、RocketMQ 运维
18.1 日常维护
18.2 集群扩容
18.3 数据迁移
18.4 版本升级
18.5 故障排查