RocketMq源码查看之一(NameSrv和Broker的启动配置)

一、配置一下RocketMq的运行环境变量:

如果不配置或者配置错误,在启动的时候,可能会报错:  找不到或无法加载主类

原因1:目录配错,即:ROCEKTMQ_HOME 配错,仔细核对一下,包括空格和 / 什么的,最好不要带空格

原因2: 有时Idea里配置的环境变量,需要重启一下Idea工具(我的windows电脑遇到了此情况)

 

二、配置ROCKETMQ_HOME, 可以直接配置或在IDEA的启动配置参数里配置:

rocketmq-running-config是我新创建的目录,该目录建议不要放在你down的项目里,另找个路径,因为要配置logs文件地址等

ROCKETMQ_HOME : /XXX/XXX/XX/XX/myproject/rocketmq-running-config

RocketMq源码查看之一(NameSrv和Broker的启动配置)_第1张图片

!!如果是在IDEA里配置好了,我的idea要重启一下才生效!!

 

三、在刚才创建的目录rocketmq-running-config里添加配置文件

创建三个目录:conf、logs、store

然后从源码distrbution的conf目录下,拷贝broker.conf和logback_namesrv.xml到刚才新创建的rocketmq-running-config/conf里

 

四、修改路径

logback_namesvr.xml 文件里有${user.home},替换成 xxxxx/xxxx/rocketmq-running-config

broker.conf: 新增和修改如下

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
#namesrv的地址,代码里写的port是9876
namesrvAddr = 127.0.0.1:9876
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
# 存储路径,
storePathRootDir =  运行目录的路径/store
# commitLog
commitLog = 运行目录的路径/store/commitlog
# consume queue
storePathConsumeQueue = 运行目录的路径/store/consumequeue
# 消息文件索引路径
storePathIndex = 运行目录的路径/store/index
# checkpoint 路径
storeCheckpoint = 运行目录的路径/store/checkpoint
# abort文件
abortFile = 运行目录的路径/abort

 

五、启动NamesrvStartup

如果启动成功,会看到控制台打印了: The Name Server boot success. serializeType=JSON

 

=======================================================

Broker的相关配置

 

一、配置ROCKETMQ_HOME

同NameSrv

二、添加运行参数

它需要一个参数:Program arguments里 需要给broker指定一个配置文件存放地址

-c 运行目录的路径/conf/broker.conf

三、将distribution源码里conf下的logback_broker.xml拷贝到 运行目录下

和logback_namesrv.xml一起,并改下路径

四、启动BrokerStartup

The broker[broker-a, 10.112.13.109:10911] boot success. serializeType=JSON and name server is 127.0.0.1:9876

 

最后去logs文件夹里看下broker.log,看看是否已经成功

启动连接nameSrv(port是9876),这个端口也是在broker.conf里要配的,不能配错

RocketMq源码查看之一(NameSrv和Broker的启动配置)_第2张图片

你可能感兴趣的:(MQ)