学习源码的第一步当然是构建源码了,rocketmq是基于maven构建的,对于熟悉maven的小伙伴来说构建还是比较简单的。博主在构建的过程也是非常顺利的,基本上都是一遍就能成功!!!
环境介绍
- Window
- Jdk8
- Idea
- rocketmq 5.1.4+
一、克隆源码到本地
-
去GIthub找到rocketmq项目 >>>传送地址<<<
-
导入项目到开发工具Idea中
-
项目加载完成之后,在idea中显示的目录结构如下所示:
二、启动Name Server服务
运行 NamesrvStartup 类的 main 方法即可启动完成
控制台输出如下信息则表示运行成功
三、启动Broker服务
- 创建配置文件
在项目的根路径下创建conf文件夹,然后conf文件夹中创建broker.conf文件。文件内容如下所示:
# broker集群名称
brokerClusterName = DefaultCluster
# broker名称
brokerName = broker-a
# id,0表示master节点
brokerId = 0
#删除多少天以前的commitlog
deleteWhen = 04
# broker集群间同步数据方式
brokerRole = ASYNC_MASTER
#刷盘方式
flushDiskType = ASYNC_FLUSH
# 自动创建Topic
autoCreateTopicEnable=true
# nameServ地址
namesrvAddr=127.0.0.1:9876
# rocketmqHome路径
rocketmqHome=D:/programs/workspaces/IdeaProjects/rocketmq/conf
# 存储路径
storePathRootDir=D:/programs/workspaces/IdeaProjects/rocketmq/conf/datadir
# commitLog路径
storePathCommitLog=D:/programs/workspaces/IdeaProjects/rocketmq/conf/datadir/commitlog
# 消息队列存储路径
storePathConsumeQueue=D:/programs/workspaces/IdeaProjects/rocketmq/conf/datadir/consumequeue
# 消息索引存储路径
storePathIndex=D:/programs/workspaces/IdeaProjects/rocketmq/conf/datadir/index
# checkpoint文件路径
storeCheckpoint=D:/programs/workspaces/IdeaProjects/rocketmq/conf/datadir/checkpoint
# abort文件存储路径
abortFile=D:/programs/workspaces/IdeaProjects/rocketmq/conf/datadir/abort
- 在BorkerStartup类的main方法中添加如下内容:
args = new String[]{"-c","D:\\programs\\workspaces\\IdeaProjects\\rocketmq\\conf\\broker.conf"};
- 运行BorkerStartup类的main方法,控制台输出如下日志则表示启动成功
四、测试
- 启动消费者
- 启动生产者
等待消息都发送完成之后再观察消费者的控制台即可看到消费的日志
好了,到了处此处说明你已经学习了rocketmq源码构建的全部流程。现在你可以开开心心的在idea中阅读rocketmq的源码了…………coding永在继续