什么是RocketMQ?
RocketMQ是由阿里捐赠给Apache的一款低延迟、高并发、高可用、高可靠的分布式消息中间件。经历了淘宝双十一的洗礼。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、下载可视化界面
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二进制的安装包)
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包