RocketMQ(4.9.4)学习笔记 - 安装部署

单机部署:
官网文档地址:

https://rocketmq.apache.org/zh/docs/4.x

参考文档:

windows安装RocketMQ_rocketmq windows_book多得的博客-CSDN博客

下载地址:

https://archive.apache.org/dist/rocketmq/4.9.4/rocketmq-all-4.9.4-bin-release.zip

解压到本地,

bin中有各种执行脚本,包含windows和linux的

windows单机部署:

先配置环境变量

启动namesrv

进入rocketmq解压后的文件夹路径,

双击mqnamesrv.cmd或runserver.cmd, mqnamesrv.cmd内部也是调用runserver.cmd

namesrv在rocketmq中相当于一个服务注册中心:

根据官方文档说明,通过namesrv拉取broker信息,真正消息发送和消费都是通过broker

启动broker

在conf文件夹中有很多conf文件,这就涉及到rocketmq的部署方式;

集群模式:参考 RocketMQ 集群配置 - 知乎

2m-2s-async(本文采用模式)-2主2从异步刷盘(吞吐量较大,但是消息可能丢失)

2m-2s-sync:2主2从同步刷盘(吞吐量会下降,但是消息更安全)

2m-noslave :2主无从(单点故障),然后还可以直接配置broker.conf,进行单点环境配置

dledger:用来实现主从切换的。集群中的节点会基于Raft协议随机选举出一个leader,

其他的就都是follower。通常正式环境都会采用这种方式来搭建集群。

然后就是broker.conf文件,根据一些资料说这个是单机的默认配置文件,但是似乎不是,启动的时候需要指定这个文件才行。

broker配置:

其中brokerIP1指向rocketmq配置的外网地址,autoCreateEnableTopic = true表示开启自动创建topic功能,此功能线下测试用用就好,上线最好不要开启,如需要手动创建topic,命令如下 :

sh bin/mqadmin updateTopic -c DefaultCluster -t TopicTest -n 127.0.0.1:9876

启动broker命令

start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true -c ../conf/broker.conf

其中autoCreateTopicEnable如果在broker.conf中已配置则可去除。

启动console,mq的控制台

下载地址:GitHub - apache/rocketmq-externals: Mirror of Apache RocketMQ (Incubating)

使用idea工具open项目,切换分支。

去除启动类上的注释

修改配置

启动项目,访问项目地址

正常情况下cluster和topic都不为空的,为空说明配置有问题,现在可以使用mq了

Docker部署:
启动namesrv

docker run -d --name rmqnamesrv -p 9876:9876 -e "NAMESRV_ADDR=192.168.31.26:9876" -v D:\mqvolume\logs:/home/rocketmq/logs -v D:\mqvolume\store:/home/rocketmq/store apache/rocketmq:4.9.4 sh mqnamesrv

启动broker

docker run -d --name rmqbroker -p 10911:10911 -p 10912:10912 -v D:\mqvolume\logs:/home/rocketmq/logs -v D:\mqvolume\store:/home/rocketmq/store -v D:\mqvolume\broker.conf:/home/rocketmq/rocketmq-4.9.4/conf/broker.conf -e "NAMESRV_ADDR=192.168.31.26:9876" apache/rocketmq:4.9.4 sh mqbroker -c /home/rocketmq/rocketmq-4.9.4/conf/broker.conf

启动控制台

docker run -e "JAVA_OPTS=-Drocketmq.config.namesrvAddr=192.168.31.26:9876 -Drocketmq.config.isVIPChannel=false" -p 8088:8080 styletang/rocketmq-console-ng

相关推荐
007php0071 小时前
某大厂跳动面试:计算机网络相关问题解析与总结
java·开发语言·学习·计算机网络·mysql·面试·职场和发展
知识分享小能手1 小时前
微信小程序入门学习教程,从入门到精通,微信小程序核心 API 详解与案例(13)
前端·javascript·学习·react.js·微信小程序·小程序·vue
递归不收敛1 小时前
吴恩达机器学习课程(PyTorch 适配)学习笔记:3.3 推荐系统全面解析
pytorch·学习·机器学习
又是忙碌的一天4 小时前
前端学习 JavaScript(2)
前端·javascript·学习
蒙奇D索大4 小时前
【数据结构】考研数据结构核心考点:二叉排序树(BST)全方位详解与代码实现
数据结构·笔记·学习·考研·算法·改行学it
玲娜贝儿--努力学习买大鸡腿版4 小时前
推荐算法学习笔记(十九)阿里SIM 模型
笔记·学习·推荐算法
光影少年4 小时前
Flutter生态及学习路线
学习·flutter
尤利乌斯.X4 小时前
复杂网络仿真从入门到精通:0 学习路线
网络·学习·matlab·仿真·复杂网络
梦幻精灵_cq4 小时前
70行代码展现我的“毕生”编程能力
学习
Yupureki5 小时前
从零开始的C++学习生活 6:string的入门使用
c语言·c++·学习·visual studio