【源码解析3】源码本地运行和可视化界面的使用

55 阅读1分钟

rocketmq代码拉取

我们使用rocketmq-all-4.9.4的tag版本进行讲解

仓库地址:github.com/apache/rock…

image-20230620142630442.png

运行Namesrv

创建文件夹D:\rocketmqx、D:\rocketmqx\conf、D:\rocketmqx\store

将distribution/conf/broker.conf、distribution/conf/logback_broker.xml、distribution/conf/logback_namesrv.xml复制到D:\rocketmqx\conf目录下

在distribution/conf/broker.conf文件后增加

namesrvAddr = 127.0.0.1:9876
storePathRootDir = D:\rocketmqx\store
storePathCommitLog = D:\rocketmqx\store\commitlog
storePathConsumeQueue = D:\rocketmqx\store\consumequeue
storePathIndex = D:\rocketmqx\store\index
storeCheckpoint = D:\rocketmqx\store\checkpoint

配置Environment variables为ROCKETMQ_HOME=D:\rocketmqx

image-20230620153727235.png

执行NamesrvStartup的main方法(org.apache.rocketmq.namesrv.NamesrvStartup#main)

显示以下日志表示启动成功

The Name Server boot success. serializeType=JSON

image-20230620154930371.png

运行Broker

添加VM options配置 -Drocketmq.broker.diskSpaceWarningLevelRatio=0.99

将Program arguments配置为-c D:\rocketmqx\conf\broker.conf

配置Environment variables为ROCKETMQ_HOME=D:\rocketmqx

image-20230620174951460.png

运行BrokerStartup的main方法(org.apache.rocketmq.broker.BrokerStartup#main)

显示以下日志表示启动成功

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

image-20230620155045949.png

启动rocketmq-dashboard

下载rocketmq-dashboard代码github.com/apache/rock…

直接启动,然后浏览器访问127.0.0.1:8080

添加主题名TopicTest image-20230620163854697.png

启动Producer

在org.apache.rocketmq.example.simple.Producer#main 增加一行代码

指定当前使用的Namesrv的ip和port

DefaultMQProducer producer = new DefaultMQProducer("ProducerGroupName");
// 新增的代码
producer.setNamesrvAddr("127.0.0.1:9876");
producer.start();

image.png 然后运行org.apache.rocketmq.example.simple.Producer#main

发现运行成功

image-20230620175109307.png

查看消息

进入RocketMQ-dashboard查看消息