RocketMQ探索序言

  准备潜心学习一下消息中间件,因而乎RocketMQ出如今个人眼前,阿里的东西!通过了几个双十一的考验,激起了我严重的兴趣!最后的结果就是:我毅然的开启了RocketMQ探索之旅!git

  序言:让代码跑起来。github

下载源码为3.5.8,下载地址https://github.com/alibaba/RocketMQ/tree/v3.5.8函数

在IntelliJ中跑源码跑起来,这样咱们就能够启动namesrv和broker(在写这篇博客的时候我已经在网上看过关于RocketMQ的相关知识了)。学习

  • 在IntelliJ中导入源码:

  • 设置RocketMQ HOME环境变量

          由于是直接调试源码,须要将环境变量设置为解压后的目录。spa

          

  • 配置nameserver和broker

         在RocketMQ的服务端,须要启动nameserver和broker两个模块。因此要在IntelliJ中配置nameserver和broker的启动项。.net

         点击 “Run->Edit Configuration”调试

  1. broker

 

         配置main函数的启动类:日志

com.alibaba.rocketmq.broker.BrokerStartup

        配置VM OPTIONS(虚拟机启动参数):-server -Xms1g -Xmx1g -Xmn512m -XX:PermSize=128m -XX:MaxPermSize=320m。这个能够在RocketMQ自带的启动参数中查找,打开bin目录下的mqbroker文件,看到以下内容:code

       

       看出broker是经过runbroker.sh这个脚本启动的:server

       在runbroker.sh文件中能够看启动参数:

       

       参数能够根据本身的内存大小进行调整,我调整1G。

       配置main的启动参数:链接namesrv的地址和端口。

       -n 192.168.1.101:9876

  1. nameserver

        ​​​​​​

       和broker的配置差很少。

注意:要使用JDK1.8编译。

  • 启动nameserver和broker

         先启动nameserver:

         

         再启动broker

         

        出现以上的日志,就代表启动成功了!

        注意:我在启动中出现的问题:1:刚开始没有使用JDK1.8编译;2:直接下下来的源码在启动broker的时候报:

        我是直接改了实现类。

  • 编写Producer和Consumer

         这个网上比较多,我也是在网上找的。来源:https://my.oschina.net/cloudcoder/blog/200741

    作完以上的动做,就能够完整的跑起来源码!接下来就能够DEBUG源码,来探索RocketMQ其中的奥秘!

相关文章
相关标签/搜索