RocketMQ4.0.0环境搭建及HelloWorld

本文介绍了如何在Linux和Windows环境下搭建RocketMQ 4.0.0,包括Linux下的步骤:下载解压、启动Name Server和Broker,以及Windows下通过源码编译运行。同时,提供了遇到问题的解决提示,如添加特定启动参数和修改源码中的RocketMQ_HOME路径。
摘要由CSDN通过智能技术生成

一、linux平台下搭建

1 准备条件:64bit JDK 1.7+;且配置好JAVA_HOME环境变量

2 去apache官网Downloading the Apache RocketMQ Releases下载rocketmq-all-4.0.0-incubating-bin-release.zip,注意:最好要Binary版,不然后续启动会报ClassNotFound错误。如果官网已经没有4.0.0版本或者无法连接到官网,也可以到我的资源RocketMQ4.0.0安装包下载。

3 解压文件:unzip rocketmq-all-4.0.0-incubating-bin-release.zip

4 进入解压后的目录apache-rocketmq-all

5 启动 Name Server:

nohup sh bin/mqnamesrv &

6 启动Broker:

nohup sh mqbroker -n localhost:9876 autoCreateTopicEnable=true &

!!!(记得加 autoCreateTopicEnable=true ,否则会报No route info of this topic错误)

测试:

启动 Producer:

export NAMESRV_ADDR=localhost:9876

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

启动 Consumer:

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

二、windows平台下搭建

很悲伤,RocketMQ4.0.0版本暂无windows版,但是我们还是可以在windows平台下使用和练习。

1 在rocketmq的github地址 将源代码导入到本地。
如果该地址版本已更新,可以到我的github地址下载,以确保是4.0.0版本。

2 添加环境变量ROCKETMQ_HOME ,设置值为:127.0.0.1:9876

3 启动Name Server:
(a) 进入org.apache.rocketmq.namesrv包内的NamesrvStartup类,修改109行的

configurator.doConfigure(namesrvConfig.getRocketmqHome() + "/conf/logback_namesrv.xml");

将namesrvConfig.getRocketmqHome()改为你工程存放的目录,例如我的设置是

configurator.doConfigure("E:/IdeaWorkplace/incubator-rocketmq" + "/conf/logback_namesrv.xml");

(b) run NamesrvStartup类的main方法

4 启动Broker:
(a) 进入org.apache.rocketmq.broker包内的BrokerStartup类,修改183行的

configurator.doConfigure(brokerConfig.getRocketmqHome() + "/conf/logback_broker.xml");

将brokerConfig.getRocketmqHome()改为你工程存放的目录,例如我的设置是

configurator.doConfigure("E:/IdeaWorkplace/incubator-rocketmq" + "/conf/logback_namesrv.xml");

(b) run BrokerStartup的main方法

5 测试
进入example模块下的org.apache.rocketmq.example.quickstart包,先run Producer的main方法,再run Consumer的main方法。看到如下输出,表示配置成功。

SendResult [sendStatus=SEND_OK, msgId=0A762C5D210447415DBF06CF99C203E0, offsetMsgId=0A762C5D00002A9F0000000000060E64, messageQueue=MessageQueue [topic=TopicTest, brokerName=SF0001139954B, queueId=1], queueOffset=498]
SendResult [sendStatus=SEND_OK, msgId=0A762C5D210447415DBF06CF99C503E1, offsetMsgId=0A762C5D00002A9F0000000000060F18, messageQueue=MessageQueue [topic=TopicTest, brokerName=SF0001139954B, queueId=2], queueOffset=498]
SendResult [sendStatus=SEND_OK, msgId=0A762C5D210447415DBF06CF99C703E2, offsetMsgId=0A762C5D00002A9F0000000000060FCC, messageQueue=MessageQueue [topic=TopicTest, brokerName=SF0001139954B, queueId=3], queueOffset=498]
ConsumeMessageThread_9 Receive New Messages: [MessageExt [queueId=3, storeSize=180, queueOffset=484, sysFlag=0, bornTimestamp=1488455068491, bornHost=/10.118.44.93:59296, storeTimestamp=1488455068492, storeHost=/10.118.44.93:10911, msgId=0A762C5D00002A9F000000000005E86C, commitLogOffset=387180, bodyCRC=736192263, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={TAGS=TagA, WAIT=true, UNIQ_KEY=0A762C5D210447415DBF06CF994B03AA, MAX_OFFSET=500, CONSUME_START_TIME=1488455116459, MIN_OFFSET=0}, body=18]]]
ConsumeMessageThread_18 Receive New Messages: [MessageExt [queueId=3, storeSize=180, queueOffset=483, sysFlag=0, bornTimestamp=1488455068483, bornHost=/10.118.44.93:59296, storeTimestamp=1488455068484, storeHost=/10.118.44.93:10911, msgId=0A762C5D00002A9F000000000005E59C, commitLogOffset=386460, bodyCRC=576138028, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={TAGS=TagA, WAIT=true, UNIQ_KEY=0A762C5D210447415DBF06CF994303A6, MAX_OFFSET=500, CONSUME_START_TIME=1488455116459, MIN_OFFSET=0}, body=18]]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值