RocketMQ源码阅读(1)-环境搭建

1、rocketmq源码导入

jdk/maven安装配置略,源码地址:

https://github.com/apache/rocketmq.git

2、项目启动

2.1、NameServer启动

1)找到NamesrvStartup主类

2)配置环境变量(ROCKETMQ_HOME=d:\rocketmq)

3)创建相应目录(d:\rocketmq,并在该目录下创建conf、logs、store目录)

4)、拷贝相应配置文件(distribution:broker.conf、logback_broker.xml、logback_broker.xml)到D:\rocketmq\conf目录下,修改修改logback_broker.xml文件的日志路径,broker.conf文件部分配置

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH

# nameServer地址,分号分割
namesrvAddr=127.0.0.1:9876

# 存储路径
storePathRootDir=D:\\rocketmq\\store

# commitLog 存储路径
storePathCommitLog=D:\\rocketmq\\store\\commitlog

# 消费队列存储路径
storePathConsumeQueue=D:\\rocketmq\\store\\consumequeue

# 消息索引存储路径
storePathIndex=D:\\rocketmq\\store\\index

# checkpoint 存储路径
storeCheckpoint=D:\\rocketmq\\store\\checkpoint

# abort文件存储路径
abortFile=D:\\rocketmq\\store\\abort

5)、运行NamesrvStartup主类

 

2.2、Broker启动

1)、配置启动参数

2)、运行BrokerStartup主类

2.3、测试消息发送与消息消费

1)、发送消息:org.apache.rocketmq.example.quickstart.Producer

    设置NameServer地址:

producer.setNamesrvAddr("127.0.0.1:9876");

   然后运行该类的main方法,有如下响应证明消息发送成功:

SendResult [sendStatus=SEND_OK, msgId=C0A8008149AC18B4AAC2189669D503E7, offsetMsgId=C0A8380100002A9F000000000002E11D, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=0], queueOffset=249]

2)、消费者消费消息:org.apache.rocketmq.example.quickstart.Consumer

 设置NameServer地址:

consumer.setNamesrvAddr("127.0.0.1:9876");

然后运行该类的main方法,有如下响应证明消息消费成功:

ConsumeMessageThread_12 Receive New Messages: [MessageExt [queueId=1, storeSize=189, queueOffset=239, sysFlag=0, bornTimestamp=1567679710658, bornHost=/192.168.56.1:55552, storeTimestamp=1567679710658, storeHost=/192.168.56.1:10911, msgId=C0A8380100002A9F000000000002C15E, commitLogOffset=180574, bodyCRC=730101603, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message{topic='TopicTest', flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=250, CONSUME_START_TIME=1567680098005, UNIQ_KEY=C0A8008149AC18B4AAC2189669C203BC, WAIT=true, TAGS=TagA}, body=[80, 114, 111, 100, 117, 99, 101, 114, 45, 72, 101, 108, 108, 111, 32, 82, 111, 99, 107, 101, 116, 77, 81, 32, 57, 53, 54], transactionId='null'}]] 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章