【一】RocketMQ源码环境搭建

310 阅读1分钟

小刘老师源码课程笔记

下载源码

源码地址 github.com/apache/rock… 版本 release-4.9.0

首先fork一份源码,最新的就行,然后把fork的代码clone的本地,然后就随你折腾了。

配置项目

调整idea

将项目的编译级别跳到11,否则编译不过去,无法启动

image.png

配置conf

在项目路径下创建conf目录,将distribution模块下conf目录下的broker.conf,logback_broker.xml,logback_namesrv.xml复制到conf目录下。

image.png

修改broker.conf

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH

##############下面这些是新加的
#D:\OneDrive\study\sourceCode\java\rocketmq\data。这个目录是用来存消息的,可以自定义。

#nameServer 地址,使用分号隔开
namesrvAddr=127.0.0.1:9876
#存储路径
storePathRootDir=D:\OneDrive\study\sourceCode\java\rocketmq\data
#commitLog存储路径
storePathCommitLog=D:\OneDrive\study\sourceCode\java\rocketmq\data\commitlog
#消费队列存储路径
storePathConsumeQueue=D:\OneDrive\study\sourceCode\java\rocketmq\data\consumequeue
#消息索引存储路径
storePathIndex=D:\OneDrive\study\sourceCode\java\rocketmq\data\index
#checkpoint 文件存储路径
storeCheckpoint=D:\OneDrive\study\sourceCode\java\rocketmq\data\checkpoint
#abort 文件存储路径
abortFile=D:\OneDrive\study\sourceCode\java\rocketmq\data\abort

修改logback_broker.xml,logback_namesrv.xml

${user.home}改成路径,类似D:\OneDrive\study\sourceCode\java\rocketmq\这样就行。不写的话会到环境变量里找。写到c盘会占你硬盘。

启动项目

启动nameserver

第一次启动会失败,需要添加一个env参数。 ROCKETMQ_HOME 对应你的项目路径

image.png

启动成功就是这样的

image.png

启动broker

同样需要添加一个env参数。 ROCKETMQ_HOME 对应你的项目路径。还需要一个program参数指向conf目录下的broker.conf文件 -c D:\OneDrive\study\sourceCode\java\rocketmq\conf\broker.conf

image.png

启动成功 image.png

测试项目

在example模块下org.apache.rocketmq.example.quickstart有生成者和消费者示例,可以启动试试。需要添加一下nameserver的地址。能够生产消息和消费消息就表示环境成功了。

image.png

image.png