rocketmq windows环境部署
前言
rocketmqmq是我们经常使用的中间件,功能也很多,尝试本地部署rocketmq。
文章目录
- 前言
- 一、部署nameserver和broker
- 1.下载中间件二进制包
- 2.解压二进制包并且启动nameserver
- 3 启动broker
- 二、部署rocketmq dashbord可视化界面
- 2.1 安装包下载
- 2.2 启动dashbord
- 三、测试mq
- 3.1 引入jar包
- 3.2 写测试controller类
- 3.3发送消息测试
- 3.4 到rocketmq dashbord上去查看消息
- 总结
一、部署nameserver和broker
1.下载中间件二进制包
https://rocketmq.apache.org/zh/download
下载地址如上。
这里如上截图下载4.7.0的包,这个包我随便选的,能用就行。
2.解压二进制包并且启动nameserver
解压到本地如图所示目录
点开版本笔记,看看如何使用和注意事项。
这里可以切换到中文模式,方便查看。
可以看到这个版本的jdk版本最低为1.8,注意下这个就行。
配置电脑rocketmq 环境变量
#新建环境变量ROCKETMQ_HOME
ROCKETMQ_HOME=D:\javaTools\rocketmq\rocketmq-all-4.7.0-bin-release
#path环境变量后追加
%ROCKETMQ_HOME%\bin
启动nameserver,在解压后的安装包的bin目录下,双击mqnamesrv.cmd,启动nameserver
看到以下日志说明启动成功。
3 启动broker
start mqbroker.cmd -n localhost:9876 autoCreateTopicEnable=true
显示如图启动成功。
二、部署rocketmq dashbord可视化界面
2.1 安装包下载
dashbord安装包地址
这里下载的是源码包需要再idea打包成jar包
这里我就不展示如何打包了,做过开发的应该都清楚,或者去GitHub上下载二进制包。地址如下
dashbord二进制包下载地址
2.2 启动dashbord
修改application.xml nameserver地址
直接本地启动
如图所示启动成功
访问dashbord地址。
http://localhost:8080/#/
三、测试mq
3.1 引入jar包
在springboot项目引入以下jar包
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.2.2</version>
</dependency>
3.2 写测试controller类
package com.example.springdemo.demo.control;
import org.apache.rocketmq.client.producer.SendCallback;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.client.producer.SendStatus;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.Message;
import org.springframework.messaging.support.MessageBuilder;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class RocketmqController {
@Autowired
private RocketMQTemplate rocketMQTemplate;
@RequestMapping(value = "/rocketmql/test")
public String contextLoads() {
// 1. 同步消息
SendResult sendResult = rocketMQTemplate.syncSend("bootTestTopic", "这是一个同步消息");
SendStatus sendStatus = sendResult.getSendStatus();
return String.valueOf(sendStatus);
}
}
3.3发送消息测试
http://localhost:8008/rocketmql/test
显示发送成功
3.4 到rocketmq dashbord上去查看消息
可以看到消息发送成功了。
总结
1.rocketmq有两个组件需要启动一个是nameserver,一个是broker
2.dashbord需要自己修改nameserver的地址然后打jar包去启动,直接命令启动会报错。
3.发送完消息后可以用dashbord去查看自己发送的消息是否成功,检验自己的rocketmq是否搭建成功。