RocketMQ入门-源码启动Namesrv和Broker

RocketMQ源码启动Namesrv和Broker

本篇主要讲解内容包括:

  • 配置环境信息将RocketMQ源码中的namesrv和broker启动

阅读的源码版本是4.8.0,请自行下载RocketMQ的源码,官方下载地址

RocketMQ源码中具有多个模块,需要在源代码目录下先执行mvn clean package -Dmaven.test.skip将源码编译(忽略测试包),后续才可以直接启动.

配置Namesrv

配置namesrv主要是配置ROCKETMQ_HOME这个环境变量,在前文***RocketMQ安装***中,首先就是要配置ROCKETMQ_HOME环境变量,它是用来辅助namesrv加载配置文件的.

  1. 使用idea打开源码根目录

  2. 根目录下创建conf文件夹

  3. 将distribution模块下的以下个个文件拷贝到创建好的conf文件夹中,文件名为:broker.conf logback_broker.xml logback_namesrv.xml logback_tools.xml

  4. 在idea的启动配置项上,新建一个Application,配置:

    • Main class指向org.apache.rocketmq.namesrv.NamesrvStartup
    • Environment variables中配置ROCKETMQ_HOME这个环境变量,路径配置为RocketMQ源代码的根目录(namesrv启动会去ROCKETMQ_HOME环境变量的路径下找conf目录下的配置文件)
    • Use classpath of module选择rocketmq-namesrv模块即可
      在这里插入图片描述

配置Broker

配置Broker和上面的namesrv类似,不过需要注意环境变量还需要配置一个NAMESRV_ADDR指向namesrv的启动ip及端口

1.在idea的启动配置上添加一个Application

  • Main class指向org.apache.rocketmq.broker.BrokerStartup
  • Program arguments需要配置启动broker指定的配置文件,配置内容为-c [broker.conf配置文件的绝对路径],可以使用拷贝到源码根目录conf文件夹下的broker.conf文件
  • Environment variables中配置ROCKETMQ_HOME这个环境变量,路径配置为RocketMQ源代码的根目录(和Namesrv中配置一致);配置NAMESRV_ADDR环境变量,指向启动的namesrv的IP:端口
  • Use classpath of module选择rocketmq-broker模块即可

配置TODO

配置todo是为了方便阅读源码时做标记,同时借助idea的todo功能进行关键点查看.我认为这是比较重要的,当我们回顾代码时作用很明显.

实际效果如下:

在这里插入图片描述

如何对idea进行这样的配置呢?

  1. 打开TODO栏,点击编辑过滤器

在这里插入图片描述

  1. 自定义关键字表达式,我定义了k1 k2 k3三个关键字;并且添加了一个Filters用来展示有k1 | k2 | k3标记的信息

在这里插入图片描述

启动Namesrv和broker

先启动Namesrv,再启动broker.

  1. namesrv启动时,控制台输出The Name Server boot success. serializeType=JSON,表示启动成功
  2. broker启动时,控制台输出The broker[broker-a, 192.168.1.7:10911] boot success. serializeType=JSON and name server is 127.0.0.1:9876,表示启动成功

测试RocketMQ是否可用:

  1. 打开example模块,找到org.apache.rocketmq.example.quickstart.Consumer类,并给生成的消费者对象关联namesrv,consumer.setNamesrvAddr("127.0.0.1:9876");,启动消费者
  2. 打开example模块,找到org.apache.rocketmq.example.quickstart.Producer类,并给生成的生产者对象关联namesrv,producer.setNamesrvAddr("127.0.0.1:9876");,启动生产者
  3. 观察生产者和消费者控制台输出信息,生产者输出SendResult ....表示成功
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值