《消息队列:从入门到精通》目录
2025/9/1大约 3 分钟
《消息队列:从入门到精通》目录
第一部分 基础篇:打好地基
为什么需要消息队列?
- 系统间通信方式对比(同步调用 vs 异步调用)
- 解耦、异步、削峰填谷
- MQ 的优势与风险
消息队列的基本概念
- 消息、队列、主题、消费者
- 点对点模型 vs 发布订阅模型
- Push vs Pull 消费模式
消息队列的核心要素
- 生产者、Broker、消费者
- 消息持久化
- 消费确认与重试机制
消息可靠性与一致性
- 至少一次、至多一次、精确一次
- 消息丢失、重复、乱序问题
- 幂等性设计
第二部分 实战篇:从零实现一个消息队列
最小可用消息队列
- 用内存队列实现生产与消费
- 多线程模型
- 简单 ACK 机制
持久化与存储
- 文件存储 vs 数据库存储
- 顺序写与刷盘机制
- 日志分段与索引
订阅与分发机制
- 点对点 vs 发布订阅模式实现
- 消费组设计
- 消息路由
高可用与容错
- 主从复制
- Broker 集群设计
- 消费者负载均衡
第三部分 框架篇:主流 MQ 深度解析
RabbitMQ
- AMQP 协议与架构
- Exchange、Queue、Binding 模型
- 可靠性保证与事务机制
- 典型应用场景
Kafka
- Partition 与 Consumer Group 模型
- 零拷贝与高吞吐原理
- ISR 副本机制
- Kafka Streams 与实时处理
RocketMQ
- 基于 Topic 与 Tag 的设计
- 顺序消息、延时消息
- 事务消息实现
- 金融、电商场景应用
Pulsar
- 分层架构(Broker + BookKeeper + ZooKeeper)
- 多租户与分区主题
- 存算分离与无限消息保留
- 与 Kafka 的对比
其他 MQ 框架简析
- ActiveMQ
- Redis Stream
- ZeroMQ
第四部分 高级篇:深入消息队列的核心机制
消息投递与确认机制
- ACK、NACK、重试
- 死信队列(DLQ)
- 重复消费与幂等性设计
消息顺序与事务性
- 全局顺序 vs 分区顺序
- 分布式事务消息(RocketMQ / Kafka 实践)
- TCC/Saga 与 MQ 的结合
消息路由与过滤
- 广播、单播、组播
- 标签过滤与消息选择器
- 精准投递
高并发与性能优化
- 批量发送与批量消费
- 零拷贝与 mmap
- 内核参数优化(Linux IO/网络优化)
安全与隔离
- 权限控制与 ACL
- 消息加密
- 多租户与隔离策略
第五部分 实践篇:MQ 在生产环境的落地
典型应用场景
- 电商系统:订单、库存、支付解耦
- 日志收集与大数据处理
- 异步通知与任务调度
- IoT 与实时监控
运维与监控
- MQ 的常见故障排查
- 性能指标(TPS、延迟、堆积量)
- 运维平台与可视化(Kafka Manager、RocketMQ Console)
架构实战案例
- 高并发秒杀系统的 MQ 设计
- 跨数据中心消息同步
- 消息队列与微服务体系整合
第六部分 展望篇:未来趋势
MQ 与云原生
- 云上的消息队列服务(AWS SQS、阿里云 RocketMQ、Pulsar on K8s)
- Serverless 与 MQ 的结合
- Operator 管理模式
MQ 与事件驱动架构
- 事件溯源(Event Sourcing)
- CQRS 模式与消息队列
- 与 Kafka Streams / Flink 的集成
总结与学习路径
- 从零到精通的学习方法
- 框架选型思路
- 从工程师到架构师的 MQ 思维
📌 设计思路:
- 每个 MQ 框架章节都包含:架构图 + 核心原理 + Demo 示例 + 优缺点总结。
- 读者能先自己手写一个迷你 MQ,再去理解 RabbitMQ/Kafka/RocketMQ/Pulsar。
- 最后结合生产案例和未来趋势,形成完整的 MQ 认知体系。