一.预备环境
1.系统
Windows
2. 环境
JDK1.8、Maven、Git
二. RocketMQ部署
1.下载
1.1地址:http://rocketmq.apache.org/release_notes/release-notes-4.2.0/
1.2选择‘Binary’进行下载
1.3解压已下载工程
2. 配置
2.1 系统环境变量配置
变量名:ROCKETMQ_HOME
变量值:MQ解压路径\MQ文件夹名
3. 启动
3.1 启动NAMESERVER
Cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqnamesrv.cmd’,启动NAMESERVER。成功后会弹出提示框,此框勿关闭。
3.2 启动BROKER
Cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true’,启动BROKER。成功后会弹出提示框,此框勿关闭。
假如弹出提示框提示‘错误: 找不到或无法加载主类 xxxxxx’。打开runbroker.cmd,然后将‘%CLASSPATH%’加上英文双引号。保存并重新执行start语句。
启动消费者
依次输入以下命令:
set NAMESRV_ADDR=localhost:9876
tools.cmd org.apache.rocketmq.example.quickstart.Consumer
启动生产者
重新打开一个cmd窗口,跳转到bin目录下,依次执行以下命令:
set NAMESRV_ADDR=localhost:9876
tools.cmd org.apache.rocketmq.example.quickstart.Producer
谨记:执行消息队列前,需要先启动:
mqnamesrv 和 BROKER:
1. start mqnamesrv.cmd
2. start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true
如果报错:
org.apache.rocketmq.client.exception.MQClientException: No route info of this topic, TopicTest
原因:
Broker 禁止自动创建Topic,且用户没有通过手动创建此Topic,或者broker 和 Nameserver网络不通;
解决方案:
1. 修改broker.properties配置,自动创建topic,添加如下:
1 |
|
2. 升级RocketMQ版本为4.4.0,新版本会默认自动创建
1 2 3 4 5 |
|