一、RocketMQ介绍
RocketMQ 是阿里巴巴开源的分布式消息中间件。支持事务消息、顺序消息、批量消息、定时消息、消息回溯等。它里面有几个区别于标准消息中件间的概念,如Group、Topic、Queue等。系统组成则由Producer、Consumer、Broker、NameServer等。
二、RocketMQ安装方式
RocketMQ可以在Linux、Unix、macOS、Windows上安装,前三者可以参考
RocketMQ官网(https://rocketmq.apache.org/zh/docs/quickStart/01quickstart/
)进行安装操作。但在项目开发过程中,为了方便开发,有时候我们需要在本机开发环境也搭一套RocketMQ的运行环境,而我们大部分人用的开发机是Window电脑,因此,下面我将介绍在Windows11上怎么安装运行RocketMQ。
三、下载RocketMQ
下载地址:http://rocketmq.apache.org/release_notes
四、配置系统环境变量
- 变量名:ROCKETMQ_HOME
- 变量值:MQ解压路径,本人的安装路径是(D:\service\rocketmq-all-5.1.0-bin-release),注意,安装目录不能有空格,否则mqnamesrv服务将启动失败。
注意:配置完环境变量后不需要重启电脑就能生效了,如果启动服务的时候报错提示需要配置ROCKETMQ_HOME环境变量,大概率是你的目录地址配置错了,特别要注意zip解压缩工具解压时默认会多解压一层目录。
五、修改MQ配文件
进入到RocketMQ解压的bin目录下,修改runbroker.cmd和runserver.cmd文件。把%CLASSPATH%用引号引起来"%CLASSPATH%",否则启动会报错。如果发现该文件已经添加了引号,则跳过该配置阶段。
报错信息如下:
六、启动服务
6.1 进入RocketMQ的bin目录
先打开cmd命令窗口,cd进入到RocketMQ解压的bin目录下,再执行启动命令。在Windows11下这里有一个坑,你会发现无论你怎么cd好像都没办法进入到你想要的目录下,cd命令无效。以下我将提供两种cd到目录的方式:
- 方式1:分两步走,先输入磁盘符,如D:,再cd 目录,如下:
D:
cd temp\ac
- 方式2:一步到位,在cd后加/d,如:
cd /d D:\temp\ac
6.2 启动服务
首先启动mqnamesrv.cmd,再启动mqbroker.cmd
-
启动mqnamesrv.cmd命令:
start mqnamesrv.cmd
, -
启动mqbroker.cmd命令:
start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true
七、验证是否安装成功
RocketMQ自带了发送与接收消息的脚本tools.cmd,用来验证RocketMQ的功能是否正常。
7.1 第一步
打开一个cmd窗口,跳转到bin目录下,启动消费者。
set NAMESRV_ADDR=localhost:9876
tools.cmd org.apache.rocketmq.example.quickstart.Consumer
7.2 第二步
再打开一个cmd窗口,跳转到bin目录下,启动生产者。
set NAMESRV_ADDR=localhost:9876
tools.cmd org.apache.rocketmq.example.quickstart.Producer
消费者中能收到消息说明程序正常。
八、使用RocketMQ Dashboard管理RocketMQ
8.1 下载RocketMQ Dashboard
下载管理台插件:https://github.com/apache/rocketmq-dashboard
,将rocketmq-dashboard插件克隆到本地磁盘,或者打开地址下载zip压缩包。
8.2 启动RocketMQ Dashboard
8.2.1 使用maven编译并启动RocketMQ Dashboard插件
第一步:编译项目
直接在解压的文件的根目录,输入mvn clean package -Dmaven.test.skip=true
第二步:启动jar包
启动 打包成功后会生成target目录,进入target目录cmd,启动工程:java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar
8.2.2 使用IDEA导入项目,直接启动
如果手动maven编译项目再启动jar包比较麻烦,在本地开发环境可以直接将项目导入IDEA中进行启动,RocketMQ Dashboard就是用Java开发的一个常规项目而已。
8.3 测试RocketMQ Dashboard
启动成功后,在浏览器里输入插件地址127.0.0.1:8080
打开RocketMQ控制台,能打开控制台页面表示插件启动成功。