Bootstrap

RocketMQ在Windows和CentOS的安装实践

什么是RocketMQ?

RocketMQ是由阿里捐赠给Apache的一款低延迟、高并发、高可用、高可靠的分布式消息中间件。经历了淘宝双十一的洗礼。RocketMQ既可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积、高吞吐、可靠重试等特性。

官网:RocketMQ · 官方网站 | RocketMQ

一、在windows上安装

1.1、下载

下载(Binary二进制的安装包)地址:下载 | RocketMQ

1.2、配置环境变量

ROCKETMQ_HOME=D:\rocketmq-all-5.0.0-bin-release

NAMESRV_ADDR="localhost:9876"

path里面添加

%ROCKETMQ_HOME%\bin

1.3、验证

找到RocketMQ安装的bin目录下进入命令管理窗口(cmd)运行start mqnamesrv.cmd或者双击mqnamesrv.cmd文件,或者直接进入命令管理窗口(cmd)

在运行start mqbroker.cmd出现

二、安装可视化界面

2.1、下载可视化界面

地址:下载 | RocketMQ

2.2、修改配置文件
server.port=8085
rocketmq.config.namesrvAddr=127.0.0.1:9876

编译生成jar文件(直接运行APP)

2.3、验证

bin目录下的命令

消费消息测试:

tools.cmd org.apache.rocketmq.example.quickstart.Consumer

然后在打开新的命令面板输入

生产消息:

tools.cmd org.apache.rocketmq.example.quickstart.Producer

可视化界面

三、在CentOS7上安装

3.1、下载(Binary二进制的安装包)

地址:下载 | RocketMQ

3.2、解压

需要先创建/usr/local/rocketmq

 unzip rocketmq-all-5.0.0-bin-release.zip -d /usr/local/rocketmq/
3.3、配置环境变量

将rocketmq服务加入环境变量

vim /etc/profile
export ROCKET_HOME=/usr/local/rocketmq/rocketmq-all-5.0.0-bin-release
export PATH=$PATH:$ROCKET_HOME/bin 

使配置文件生效

source /etc/profile
3.4、创建日期文件夹
mkdir -p /usr/local/rocketmq/logs
3.5、修改启动文件,设置启动参数

(否则可能会启动报错)

修改runserver.sh

vim /usr/local/rocketmq/rocketmq-all-5.0.0-bin-release/bin/runserver.sh

修改内容如下

JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m"

修改runbroker.sh

vim /usr/local/rocketmq/rocketmq-all-5.0.0-bin-release/bin/runbroker.sh

修改内容如下

JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m"
JAVA_OPT="${JAVA_OPT} -XX:MaxDirectMemorySize=256m"

修改broker.conf配置文件

vim /usr/local/rocketmq/rocketmq-all-5.0.0-bin-release/conf/broker.conf

添加如下:

#允许自动创建topic
autoCreateTopicEnable=true

#添加nameserver地址
namesrvAddr=localhost:9876

3.6、启动

启动Nameserver,

nohup mqnamesrv >/usr/local/rocketmq/logs/mqnamesrv.log 2>&1 &

启动Broker

nohup mqbroker -n localhost:9876 >/usr/local/rocketmq/logs/broker.log 2>&1 &

或者

nohup sh mqbroker -c /usr/local/rocketmq/rocketmq-all-5.0.0-bin-release/conf/broker.conf >/usr/local/rocketmq/logs/broker.log 2>&1 &

3.7、验证
export NAMESRV_ADDR=’localhost:9876

#生产者发送数据

sh bintools.sh org.apache.rocketmq.example.quickstart.Producer

#消费者接受数据(不会停止,一直挂起)

sh bintools.sh org.apache.rocketmq.example.quickstart.Consumer
3.8、关闭

关闭namesrv服务:

sh mqshutdown namesrv

关闭broker服务 :

sh mqshutdown broker

可以使用jps命令进行查看

四、Docker 启动Rocketmq-Dashboard

docker pull apacherocketmq/rocketmq-dashboard:latest

docker run -d --name rocketmq-dashboard -e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.154.130:9876" -p 8031:8080 -t apacherocketmq/rocketmq-dashboard:latest

运行Dashboard(前提是安装好maven)

解压  

unzip rocketmq-dashboard-rocketmq-dashboard-1.0.0.zip

进入文件夹

cd /opt/software/rocketmq-dashboard-rocketmq-dashboard-1.0.0

编译

mvn clean package -Dmaven.test.skip=true

若出现编译错误,则执行下面命令重新编译

mvn clean install -U -Dmaven.test.skip=true

运行jar包

;