消息队列——rocketmq——搭建单机(windows)
目录
1、说明:
启动RocketMQ的顺序是先启动NameServer,然后再启动Broker;
2、JDK环境安装:
RocketMQ中的NameServer、Broker以及Client都是需要jdk环境的,不同的软件需要的jdk环境最低版本可能不同,详情见下表:
Version |
Client |
Broker |
NameServer |
4.0.0-incubating |
>=1.7 |
>=1.8 |
>=1.8 |
4.1.0-incubating |
>=1.6 |
>=1.8 |
>=1.8 |
4.2.0 |
>=1.6 |
>=1.8 |
>=1.8 |
4.3.x |
>=1.6 |
>=1.8 |
>=1.8 |
4.4.x |
>=1.6 |
>=1.8 |
>=1.8 |
4.5.x |
>=1.6 |
>=1.8 |
>=1.8 |
4.6.x |
>=1.6 |
>=1.8 |
>=1.8 |
4.7.x |
>=1.6 |
>=1.8 |
>=1.8 |
3、软件下载:
软件下载地址:http://rocketmq.apache.org/dowloading/releases/
4、软件安装:
将下载好的RocketMQ软件包解压到指定文件夹中。
5、配置环境变量:
配置rocketmq的环境变量:ROCKETMQ_HOME,值为rocketmq解压安装文件夹的路径,然后将ROCKETMQ_HOME/bin添加到PATH中去。
6、修改日志存储位置:
在rocketmq解压安装文件夹conf中的logback_broker.xml、logback_namesrv.xml、logback_tools.xml三个配置文件中配置的各自的日志默认为${user.home}/logs,这样不太好,建议将三个xml文件中所有的user.home全部修改为ROCKETMQ_HOME(rocketmq环境变量)。这样日志就会在rocketmq解压安装文件夹中的logs内了。
7、启动nameserver:
(1)内存调整:
java的默认启动参数中,启动时堆内存的大小为2g,老旧一点的机器上根本没有这么多空闲内存,通过查看mqnamesrv.cmd文件实质上是调用了同级的runserver.cmd,因此修改runserver.cmd中的内存配置,-Xms:启动内存,默认2g; -Xmx:运行最大内存,默认为2g。根据自己设备内存情况可自行设置,建议这两个参数值大小一致。
(2)命令启动:
A、命令中指定nameserver端口号:
在本地windows的cmd命令窗口,通过cd进入到rocketmq解压安装目录下的bin中,执行nameserver启动命令:
mqnamesrv.cmd -n 127.0.0.1:5432
说明:通过-n参数指定访问nameserver的IP和端口号。
B、(推荐)配置文件中指定nameserver端口号:
在rocketmq解压安装文件夹中conf中创建namesrv.properties配置文件,并在其中写入:listenPort=5432,这个参数就是指定nameserver端口号的参数。
在本地windows的cmd命令窗口,通过cd进入到rocketmq解压安装目录下的bin中,执行nameserver启动命令:
mqnamesrv.cmd -c ../conf/namesrv.properties
说明:通过-c参数指定nameserver启动时的配置文件。
8、验证nameserver启动:
执行完nameserver启动命令后,出现:The Name Server boot success,字样信息表示nameserver启动成功了。
9、启动broker:
(1)内存调整:
java的默认启动参数中,启动时堆内存的大小为2g,老旧一点的机器上根本没有这么多空闲内存,通过查看mqbroker.cmd文件实质上是调用了同级的runbroker.cmd,因此修改runbroker.cmd中的内存配置,-Xms:启动内存,默认2g; -Xmx:运行最大内存,默认为2g。根据自己设备内存情况可自行设置,建议这两个参数值大小一致。
(2)命令启动:
A、命令中指定nameserver端口号:
在本地windows的cmd命令窗口,通过cd进入到rocketmq解压安装目录下的bin中,执行broker启动命令:
mqbroker.cmd -n 127.0.0.1:5432
说明:通过-n参数指定nameserver地址,多个服务器地址用英文;分隔。
B、(推荐)配置文件中指定nameserver端口号:
在rocketmq解压安装文件夹中conf中有broker.properties配置文件,并在其中增加参数:namesrvAddr=127.0.0.1:5432和listenPort=30911,这两个参第一个就是指定nameserver地址的参数,第二个就是该broker的端口号。
在本地windows的cmd命令窗口,通过cd进入到rocketmq解压安装目录下的bin中,执行broker启动命令:
mqbroker.cmd -c ../conf/broker.conf
说明:通过-c参数指定broker启动时的配置文件。
10、验证broker启动:
执行完broker启动命令后,出现:The broker ... boot success and nameserver is ...,字样信息表示Broker己启动成功。
11、验证rocketmq:
RocketMQ自带了发送与接收消息的脚本tools.cmd,用来验证RocketMQ的功能是否正常。tool.cmd脚本需要带参数执行,无法用简单的双击方式启动。
(1)启动一个消费者:
在本地windows的cmd命令窗口,通过cd进入到rocketmq解压安装目录下的bin中,通过命令先指定好nameserver地址,然后执行命令启动一个消费者:
设置nameserver地址命令:
set NAMESRV_ADDR=localhost:9876
启动一个消费者命令:
tools.cmd org.apache.rocketmq.example.quickstart.Consumer
(2)启动一个生产者:
在本地windows的cmd命令窗口,通过cd进入到rocketmq解压安装目录下的bin中,通过命令先指定好nameserver地址,然后执行命令启动一个生产者:
设置nameserver地址命令:
set NAMESRV_ADDR=localhost:9876
启动一个生产者命令:
tools.cmd org.apache.rocketmq.example.quickstart.Producer
启动成功后,生产者会发送1000个消息,然后自动退出。
(3)验证rocketmq:
当生产者命令启动后,会发送1000个消息,然后自动退出。然后看消费者的命令窗口界面,会打印生产者刚刚发送的消息。这就表示本地windows成功搭建rocketmq。
12、关闭nameserver:
直接将windows中启动nameserver的命令窗口关闭即可。
13、关闭broker:
直接将windows中启动broker的命令窗口关闭即可。
下一篇: 推荐几个不错的console调试技巧
推荐阅读
-
JAVAEE——宜立方商城08:Zookeeper+SolrCloud集群搭建、搜索功能切换到集群版、Activemq消息队列搭建与使用
-
Apache RocketMQ 消息队列部署与可视化界面安装
-
使用.NET Core搭建分布式音频效果处理服务(五)利用消息队列提升水平扩展灵活性
-
分布式消息队列 RocketMQ 源码分析 —— 事务消息
-
分布式消息队列 RocketMQ源码解析:事务消息
-
windows搭建RocketMQ服务
-
Windows搭建RocketMQ集群
-
windows搭建RocketMQ服务
-
在windows中搭建rocketmq
-
消息队列——rocketmq——搭建单机(windows)