概述
RocketMQ是阿里巴巴开源的分布式消息中间件,支持事务消息、顺序消息、批量消息、定时消息、消息回溯等。它是一个队列模型的消息中间件,具有高性能、高可靠、高实时、分布式等特点。
安装
RocketMQ需要安装 NameServer
和 Broker
两个核心组件。
(1) NameServer
:前置负责服务发现和路由管理,维护着所有 Broker
的信息,并为客户提供消息发送和消费的路由信息。
(2)Broker
:负责消息的存储、转发和消费。它存储实际的消息队列,并执行消息的生产和消费。
NameServer
1.拉取 RocketMQ
最新版镜像
1 | docker pull rocketmqinc/rocketmq |
2.创建容器数据挂载目录
1 | mkdir -p /home/xlb/tool/rocketmq/logs /home/xlb/tool/rocketmq/store |
3.构建容器并启动
1 | docker run -d --name rmqnamesrv -p 9876:9876 -v /home/xlb/tool/rocketmq/logs:/root/logs -v /home/xlb/tool/rocketmq/store:/root/store -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq sh mqnamesrv |
Broker
1.创建Broker数据存储路径
1 | mkdir -p /home/xlb/tool/rocketmq/broker/logs /home/xlb/tool/rocketmq/broker/conf /home/xlb/tool/rocketmq/broker/store |
2.创建Broker配置文件
1 | cd /data/rocketmqbroker/conf |
3.配置文件内容,注意修改IP为自己IP
1 | # 所属集群名字 |
4.构建容器并启动
1 | docker run -d --name rmqbroker --link rmqnamesrv:namesrv -p 10911:10911 -p 10909:10909 -v /home/xlb/tool/rocketmq/broker/logs:/root/logs -v /home/xlb/tool/rocketmq/broker/store:/root/store -v /home/xlb/tool/rocketmq/broker/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf |
RocketMQ-Console可视化界面
1.拉取rocketmq-console镜像
1 | docker pull pangliang/rocketmq-console-ng |
2.构建容器并启动
1 | docker run -d --restart=always --name rmqadmin -e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.32.128:9876 -Dcom.rocketmqsendMessageWithVIPChannel=false" -p 9999:8080 pangliang/rocketmq-console-ng |
3.访问http://192.168.32.128:9999/
,查看可视化界面。