一:什么是RocketMQ?
RocketMQ作为一款分布式的消息中间件(阿里的说法是不遵循任何规范的,所以不能完全用JMS的那一套东西来看它),经历了Metaq1.x、Metaq2.x的发展和淘宝双十一的洗礼,在功能和性能上远超ActiveMQ。
二:为什么要用RocketMQ?
分布式消息队列可以提供应用解耦、流量削峰、消息分发等功能。
三:RocketMQ集群环境的搭建
1:RocketMQ安装包的下载,下载地址:http://rocketmq.apache.org/release_notes/release-notes-4.3.2/
下载对应机器位数的版本的RocketMQ包
2:解压并安装
cd /usr/local
tar -zxvf alibaba-rocketmq-3.2.6.tar.gz
3:修改/etc/hosts文件啊
4:创建存储配置文件
5:RocketMQ配置文件
vim broker-a.properties
vim broker-b.properties
6:修改日志配置文件
创建logs日志文件
mkdir -p /usr/local/rocketmq/logs
cd /usr/local/rocketmq/conf
sed -i 's#${user.home}#/usr/local/rocketmq#g' *.xml
7:修改启动脚本参数
vim /usr/local/rocketmq/bin/runbroker.sh
vim /usr/local/rocketmq/bin/runserver.sh
注意,在这里我将JVM的堆的初始化和最大大小统一设置为1G,并将新生代大小设置为512M。主要是考虑到我的虚拟机内存,实际上在线上是可以走默认的4G堆内存的。
8:启动NameServer
9:启动BrokerServer
当查看jps进程的时候出现BrokerStartup和NamesrvStartup的时候代表集群启动成功。
10:停止NameServer和BrokerServer
cd /usr/local/rocketmq/bin
sh mqshutdown broker
sh mqshutdown namesrv