摘要: 原创出处 http://www.iocoder.cn/RocketMQ/why-read-RocketMQ-source-code/ 「芋道源码」欢迎转载,保留摘要,谢谢!

本文主要基于 RocketMQ 4.0.x 正式版


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

为什么阅读RocketMQ源码?

  • 深入了解 MQ ,知其然知其所以然,如何实现高性能、高可用
  • 最终一致行,是如何通过 MQ 进行实现
  • 了解 Netty 在分布式中间件如何实现网络通信以及各种异常场景的处理
  • 了解 MQ 消息存储,特别是磁盘 IO 部分
  • 最重要的,希望通过阅读源码,在技术上的认知和能力上,有新的突破

步骤

  • [x] namesrv 启动
  • [ ] broker 启动
  • [x] producer 启动
  • [x] consumer 启动
  • [ ] 消息模型
    • [ ] 消息唯一编号
  • [x] producer 发消息
  • [x] broker 收消息
  • [x] broker 发消息
  • [x] consumer 收消息
    • [x] 多消费者
    • [x] 重试消息
  • [x] consumer 消息确认
  • [x] consumer 负载均衡
  • [x] broker 队列模型
  • [x] broker store 消息存储
  • [x] 顺序消息
  • [x] 事务消息
  • [x] 定时(延迟)消息
  • [x] pub/sub模型
  • [x] namesrv 集群
  • [x] broker 主从
  • [x] filtersrv 过滤消息
  • [ ] remoting 调用(server、client)
  • [ ] 跨机房
  • [ ] Hook 机制
  • [ ] Tool-Admin
  • [ ] Tool-Command
  • [ ] Tool-Monitor
  • [ ] broker 主备切换
文章目录
  1. 1. 为什么阅读RocketMQ源码?
  2. 2. 步骤