Windows环境下,机器可能面临重启,或开发者需要连接自身Windows电脑上的RocketMQ,但每次Windows主机重启后,需要手动启动RocketMQ,那有没有可以在机器重启后,RocketMQ也自动重启的办法呢,其实方法很多,本文即是为解决此问题的一种方法。 Windows主机环境安装注册服务的大致流程为,编写RocketMQ的启动脚本,下载nssm软件,然后使用nssm软件,将启动RocketMQ的脚本,注册成Windows服务,并将启动类型设置为自动,即可做到Windows主机重启,RocketMQ也会自动启动。

一、下载RocketMQ

地址:https://rocketmq.apache.org/download/

在这里插入图片描述

二、创建启动脚本

1.将下载的压缩包解压

在这里插入图片描述

2.创建启动脚本 【start.bat文件】

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BtR6HjHP-1671613558554)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221113032744.png)]

3.start.bat文件内容

start .\bin\mqnamesrv.cmd start .\bin\mqbroker.cmd -n localhost:9876 autoCreateTopicEnable=true java -jar .\console\rocketmq-dashboard-1.0.1.jar

4.脚本解释

启动rocketmq namesrv命令:mqnamesrv.cmd

启动rocketmq broker命令:mqbroker.cmd -n localhost:9876 autoCreateTopicEnable=true

启动rocketmq console命令:java -jar rocketmq-console-ng-2.0.0.jar

[注] 此jar包为下载rocketmq-externals的rocketmq-console,自行打包生成,详细请看下一节

或 java -jar rocketmq-dashboard-1.0.1.jar

[注] 此jar包为consle替代包,新版rocketmq-externals已没有console模块,独立出了dashboard项目

三、RocketMq可视化控制台 [已有控制台jar包,本节可跳过]

1.新版

​ (1)下载rocketmq-dashboard地址:https://github.com/apache/rocketmq-dashboard

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2aZfeBWO-1671613558554)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221110305681.png)]

​ (2)解压,修改rocketmq-dashboard-master\src\main\resources\application.yml配置文件

# 修改可视化控制台服务的端口,也可不修改,其他的配置不动 server: port: 8080

​ (3)maven命令打包,生成rocketmq-dashboard-1.0.1.jar

mvn clean package -Dmaven.test.skip=true

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MWU9mVgv-1671613558554)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221111707786.png)] 在这里插入图片描述

​ (4)rocketmq-console-ng-2.0.0.jar包拷贝到rocketmq的console目录下

2.旧版(有旧版项目可看此操作,没有则请按新版操作即可)

​ (1)下载rocketmq console地址(项目已失效):https://github.com/apache/rocketmq-externals/rocketmq-console

​ (2)解压,修改rocketmq-console\src\main\resources\application.properties配置文件

server.contextPath= server.port=8088 #spring.application.index=true spring.application.name=rocketmq-console spring.http.encoding.charset=UTF-8 spring.http.encoding.enabled=true spring.http.encoding.force=true logging.config=classpath:logback.xml #if this value is empty,use env value rocketmq.config.namesrvAddr NAMESRV_ADDR | now, you can set it in ops page.default localhost:9876 rocketmq.config.namesrvAddr=127.0.0.1:9876 #if you use rocketmq version < 3.5.8, rocketmq.config.isVIPChannel should be false.default true rocketmq.config.isVIPChannel= #rocketmq-console's data path:dashboard/monitor rocketmq.config.dataPath=/tmp/rocketmq-console/data #set it false if you don't want use dashboard.default true rocketmq.config.enableDashBoardCollect=true

​ (3)maven命令打包,生成\target\rocketmq-console-ng-2.0.0.jar

mvn clean package -Dmaven.test.skip=true

​ (4)rocketmq-console-ng-2.0.0.jar包拷贝到rocketmq的console目录下

四、nssm软件下载安装

1.下载地址:https://nssm.cc/download

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vdZWsKVp-1671613558555)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221112607731.png)]

2.解压安装包

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bkUm7UhB-1671613558555)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221113150599.png)]

3.进入到nssm.exe同目录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CLchgwTq-1671613558556)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221113415908.png)]

五、RocketMQ注册成服务

1.CMD进入nssm.exe同级目录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UjAnLQVV-1671613558556)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221113947416.png)]

2.RocketMQ注册成服务命令

nssm install RocketMQ

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0pFsXmp7-1671613558556)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221114525607.png)]

3.选择start.bat脚本文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DF2nhvWY-1671613558557)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221114735997.png)]

4.安装服务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qub9ZrJw-1671613558557)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221115057650.png)]

5.成功安装

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RQShX3mM-1671613558557)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221115206451.png)]

六、RocketMQ服务启动

1.win+R快捷键,键入 services.msc

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JCTEiRCS-1671613558558)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221143105925.png)]

2.启动服务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x3E2BRMn-1671613558558)(C:\Users\coding\AppData\Roaming\Typora\typora-user-images\image-20221221142931300.png)]

七、可视化控制台验证RocketMQ启动

地址:http://localhost:8081/

[外链图片转存中...(img-xtLRWDif-1671613558558)]