版本
- 基于
rocketmq-all-4.3.1
版本 - 规定
$ROCKETMQ_SOURCE
为源码根目录
源码调试环境搭建
- 克隆代码到本地,使用idea打开,源码目录结构
broker
:整个mq的核心,他能够接受producer和consumer的请求,并调用store层服务对消息进行处理。HA服务的基本单元,支持同步双写,异步双写等模式。client
::RocketMQ客户端实现common
:一些模块间通用的功能类,比如一些配置文件、常量。distribution
:发布脚本以及相关的配置文件example
:官方提供的例子filter
,过滤器,用于服务端 SQL92 的过滤方式logappender
:日志相关namesrv
:可以理解成注册中心,每个 broker 都会在这里注册,client 也会从这里获取 broker 的相关信息remoting
:基于netty的底层通信实现,所有服务间的交互都基于此模块。srvutil
:解析命令行的工具类。store
:存储层实现(负责消息的存储和读取),同时包括了索引服务,高可用HA服务实现。<