RocketMQ(一):源码调试

零度    2018/04/13    总阅读量

高并发、锁   思考   面试   实践   Netty   Linux   Redis   MySQL   Nginx   Maven   Git   ElasticSearch   Spring  

说在前面

之前写过源码阅读技巧篇,而rocketmq很符合这点,今天我们就主要看看怎么把rocketmq在本地给搭建调试起来,首先去github上面把rocketmq源码下载下来(https://github.com/apache/rocketmq/),建议用IDEA而不是Eclipse(因为我之前用Eclipse编译很麻烦)。

说明: rocketmq系列都将会以rocketmq-4.1.0-incubating进行介绍。

在阅读源码时做了一定的注释,rocketmq,可获得基于rocketmq4.1.0加详细中文代码注释 。欢迎大家 star、fork !

源码环境修改

img

项目导入之后,我们根据官方文档知道,先要启动namesrv,之后再启动broker。

img

查看脚本内容:

img

img

运行本地相关类:

img

img

问题来了,就是需namesrvConfig.setRocketmqHome即可,那么该设置什么值呢?

img

我们来看看这个脚本给里面设置了啥? 先看看环境变量ROCKETMQ_HOME是否设置,如果没有设置($0 Shell本身的文件名 )再看看是否是软连接,如果是使用了expr的模式匹配来获取连接文件的真实路径并赋值给PRG,之后就是设置ROCKETMQ_HOME值,就是当前脚本所在路径上一层。

我本地路径在D:\eclipse-workspace\tt\rocketmq-rocketmq-all-4.1.0-incubating\distribution

修改代码:

img

broker完全类似进行修改:

img

大功告成:

img

结尾

今天仅仅只是开始,期待你的持续关注,让我们一起走进rocketmq的世界!!!

往期rocketmq系列文章


扫描关注:匠心零度

(转载本站文章请注明作者和出处 匠心零度-jiangxinlingdu


腾讯云:新客户代金券
腾讯云:3年时长最低265元/年
阿里云:ECS云服务器2折起


目录