官方下载地址
RocketMQ的官网地址:
MQ目录介绍
-
bin:启动脚本,包括 shell 脚本和 CMD 脚本
-
conf:实例配置文件 ,包括 broker 配置文件、logback 配置文件等
-
lib:依赖 jar 包,包括 Netty、commons-lang、FastJSON 等
配置环境变量
变量名:ROCKETMQ_HOME
变量值:MQ 解压路径\MQ文件夹名
注意事项
RocketMQ在生产上要求虚拟机至少有8G内存才能保证运行效果,启动Broke如果因为内存不足失败,需要修改一下两个配置文件。编辑runbroker.sh和sunserver.sh修改默认JVM大小。
runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m"
runserver.sh
JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
启动
RocketMQ 的物理架构中,都是需要先启动 NameServer 再启动 Broker 的。所以启动顺序一定不要搞反了。
启动 NAMESERVER
Cmd 命令框执行进入至MQ文件夹\bin
下,然后执行start mqnamesrv.cmd
,启动 NAMESERVER。成功后会弹出提示框,此框勿关闭。
启动 BROKER
Cmd 命令框执行进入至
MQ文件夹\bin
下,然后在cmd界面执行指令start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true
启动 BROKER,需要通过命令设置
autoCreateTopicEnable为true,否则会报,没有该主题的路由信息错误。
org.apache.rocketmq.client.exception.MQClientException: No route info of this topic: TopicTest
rocketmq运行时提示 No route info of this topic 异常产生的原因可能是
①Broker禁止自动创建Topic,且用户没有通过手工方式创建Topic
②Broker没有正确连接到Name Server
③Producer没有正确连接到Name Server成功后会弹出 提示框,此框勿关闭。
安装可视化插件
运行前确保:已经有 jdk1.8,Maven(打包需要安装 Maven 3.2.x)
下载:https://codeload.github.com/apache/rocketmq-dashboard/zip/refs/heads/master
下载完成之后,解压,并进入到解压的文件夹下修改 application.yml 文件
通过cmd窗口进入解压文件夹,执行mvn clean package -Dmaven.test.skip=true,编译生成
或者将rocketmq-dashboard-master项目导入idea,进行maven打包也可以。
过程中出现bug
在使用maven使用package打包的时候有时候会出现如下错误:
There are test failures.
Please refer to XXX/target/surefire-reports for the individual test results
这个表示测试失败导致的打包失败,解决方法就是跳过test打包。
命令1:mvn package -Dmaven.test.skip=true
或
命令2:mvn package -DskipTests
或
命令3:mvn package -Dmaven.test.failure.ignore=true
以上均均可,但有一定的区别
命令1:不执行测试用例,也不会编译测试用例
命令2:不执行测试用例,会编译测试用例(如果编译也报错那么么就使用命令1)
命令3:忽略test的错误就算是失败了也继续构建
也可以通过pom文件解决(相当于命令2)
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
打包成功界面
打包成功后,去target文件夹下找到
rocketmq-dashboard-1.0.1-SNAPSHOT.jar
新建rocketmq-console文件夹,把jar包放到刚刚创建的目录下,每次启动完rocketmq之后,
java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar
指令,手动启动rocketmq-console。
启动成功后,浏览器中输入
127.0.0.1:8089
,成功后即可查看。