SpringBoot整合RocketMQ(Windows版)

RocketMQ由四部分组成

Name Server 可集群部署,节点之间无任何信息同步。提供轻量级的服务发现和路由

Broker(消息中转角色,负责存储消息,转发消息) 部署相对复杂,Broker 分为Master 与Slave,一个Master 可以对应多个Slave,但是一个Slave 只能对应一个Master,Master 与Slave 的对应关系通过指定相同的BrokerName,不同的BrokerId来定 义,BrokerId为0 表示Master,非0 表示Slave。Master 也可以部署多个。

Producer,生产者,拥有相同 Producer Group 的 Producer 组成一个集群, 与Name Server 集群中的其中一个节点(随机选择)建立长连接,定期从Name Server 取Topic 路由信息,并向提供Topic服务的Master 建立长连接,且定时向Master 发送心跳。Producer 完全无状态,可集群部署。

Consumer,消费者,接收消息进行消费的实例,拥有相同 Consumer Group 的 Consumer 组成一个集群,与Name Server 集群中的其中一个节点(随机选择)建立长连接,定期从Name Server 取Topic 路由信息,并向提供Topic 服务的Master、Slave 建立长连接,且定时向Master、Slave 发送心跳。Consumer既可以从Master 订阅消息,也可以从Slave 订阅消息,订阅规则由Broker 配置决定。

要使用rocketmq,至少需要启动两个进程,nameserver、broker,前者是各种topic注册中心,后者是真正的broker。

单机环境RocketMQ的安装(单master)

下载 rocketmq的安装文件: http://rocketmq.apache.org

解压 至本地文件夹  D:\rocketmq

配置mq环境变量 


配置rocketmq环境变量

启动 mqname  server

进入rocketMQ解压目录下的bin文件夹,启动namesrv服务:start mqnamesrv.cmd

成功启动后如下图


启动mqnamesrv成功图示


停止服务的时候需要注意,要先停止broker,其次停止nameserver。

默认情况下,nameserver监听的是 9876 端口。

启动broker

启动之前需要先打开bin文件夹下的runbroker.cmd,配置%CLASSPATH%加上双引号,如下图


修改broker启动配置

然后在bin目录下输入启动命令    

start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true

成功如下图


broker启动成功图示

rocketmq插件部署

原插件路径:https://gitee.com/mirrors/RocketMQ-Externals.git

打开Idea编辑器,打开Get From Version Control,从git上输入以上网址下载rocketmq外部项目


下载完成之后,进入‘rocketmq-externals\rocketmq-console\src\main\resources’文件夹,打开‘application.properties’进行配置。


进入‘\rocketmq-externals\rocketmq-console’文件夹,

执行‘mvn clean package -Dmaven.test.skip=true’,编译生成。

(若没有配置mvn环境,需要自行下载安装配置maven)

编译成功之后,Cmd进入‘target’文件夹,

执行‘java -jar rocketmq-console-ng-2.0.0.jar’,

启动‘rocketmq-console-ng-2.0.0.jar’。


浏览器中输入‘127.0.0.1:配置端口’,成功后即可查看。


你可能感兴趣的:(SpringBoot整合RocketMQ(Windows版))