RocketMQ 1N2B源码调试环境搭建

162 阅读2分钟

前言

源码是枯燥的,搭建一个源码调试的环境,模拟整体的流程走一遍就比较清晰了。

环境准备

  • rocketmq-4.6.0 版本
  • rocketmq-externals 切换到console分支
  • idea
  • JDK 1.8
  • Maven

官网下载rocketmq github.com/apache/rock…

官网下载rocketmq-externals github.com/apache/rock…

编译打包

mvn clean package -Dmaven.test.skip=true

我们搭建1个NameServer、2个Broker的演示环境

启动NameServer

  1. 新建文件夹

D:\dota\rocketmq\NameServer1
D:\dota\rocketmq\NameServer1\conf
D:\dota\rocketmq\NameServer1\logs

  1. 拷贝日志配置文件 将工程中distribution/conf目录下的1个文件,复制到前面创建的conf目录下, 修改日志的路径配置

  2. 启动NameServer 设置ROCKETMQ_HOME 参数

image.png

启动控制台打印 The Name Server boot success. serializeType=JSON 说明启动成功

Broker

1、新建文件夹

image.png

2、拷贝修改配置文件 broker-a配置

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

#nameServer 地址 分号分割 
namesrvAddr=127.0.0.1:9876

# 自动创建topic,方便测试
autoCreateTopicEnable=true

# 存储路径
storePathRootDir=D:\\dota\\rocketmq\\broker-a-master\\store

#commitLog 存储路径 
storePathCommitLog=D:\\dota\\rocketmq\\broker-a-master\\store\\commitlog

# 消费队列存储路径
storePathConsumeQueue=D:\\dota\\rocketmq\\broker-a-master\\store\\consumequeue

# 消息索引|存储路径 
storePathindex=D:\\dota\\rocketmq\\broker-a-master\\store\\index

#checkpoint 文件存储路径 
storeCheckpoint=D:\\dota\\rocketmq\\broker-a-master\\store\\checkpoint

#abort 文件存储路径 
abortFile=D:\\dota\\rocketmq\\broker-a-master\\store\\abort

broker-b配置

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

#nameServer 地址 分号分割 
namesrvAddr=127.0.0.1:9876

# 自动创建topic,方便测试
autoCreateTopicEnable=true

# 存储路径
storePathRootDir=D:\\dota\\rocketmq\\broker-b-master\\store

#commitLog 存储路径 
storePathCommitLog=D:\\dota\\rocketmq\\broker-b-master\\store\\commitlog

# 消费队列存储路径
storePathConsumeQueue=D:\\dota\\rocketmq\\broker-b-master\\store\\consumequeue

# 消息索存储路径 
storePathindex=D:\\dota\\rocketmq\\broker-b-master\store\\index

#checkpoint 文件存储路径 
storeCheckpoint=D:\\dota\\rocketmq\\broker-b-master\\store\\checkpoint

#abort 文件存储路径 
abortFile=D:\\dota\\rocketmq\\broker-b-master\\store\\abort

listenPort=10921

注意:windows环境下面配置文件里面的路径需要配置转义符。

3、启动Broker Broker配置需要配置环境遍历ROCKETMQ_HOME和Program启动配置文件的参数变量 image.png

这样说明Broker已经启动成功了 image.png

启动console控制台

也是先build

mvn clean package -Dmaven.test.skip=true

修改配置文件启动

image.png

新建my-topic

image.png

消息的发送和消费

这边直接用源码example文件夹下面quickstart下面的方法,启动生产者和消费者 设置topic为my-topic

image.png image.png