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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/143836.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ESP32C3工程找不到蓝牙头文件解决方法

本次在我的工程里要加上蓝牙辅助配网功能的方法。 1、在官方SDK里找到例程并复制头文件和源文件到自己的工程中。 我复制到如下图所示,并增添app_blufi.h以供其它文件操作。并增添make文件。 其中CMakeLists.txt和component.mk如下 2、使能menuconfig里的蓝牙并使能…

RUST与Python对比分析

1 什么是Rust? Rust 是一种系统编程语言,注重安全性,尤其是并发安全性,支持函数式、命令式和泛型编程范式等多范式语言。Rust 在语法上与 C 类似,但设计者希望在保持性能的同时提供更好的内存安全性。Rust 最初是由 Mo…

SAP Query报表的简单使用

Query报表一般是顾问做的简单输出报表,适用于一些单表显示,或者简单的多表连接 相关的事务代码 SQ01 SQ02 SQ03 1.首先去SQ03建立你自己的用户组并分配 2.SQ02去建立你自己的信息集 这里可以用改描述 这里点击生成并保存 然后去点击用户组分配&#x…

【动态内存管理】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 1. 为什么要有动态内存分配 2. malloc和free 2.1 malloc 2.2 free 3. calloc和realloc 3.1 calloc 3.2 realloc 4.常见的动态内存的错误 4.1对NULL指针的解引用操作…

EasyHttp 更新功能 form类型post + 限制次数

场景 easyHttp gitte 很高兴帮到您 点一个star 支持一下作者吧 之前的easyHttp只支持json类型post请求,而且有些接口有限制次数的,在循环调用过程中,容易出现突破限制的情况,现在我们引入了限制次数,例如一分钟6次&…

JavaScript库:jQuery,简化编程

jQuery介绍 官方网站: https://jquery.com jQuery 是一个 JavaScript 库 。极大地简化了 JavaScript 编程,例如 JS 原生代码几十行 实现的功 能, jQuery 可能一两行就可以实现,因此得到前端程序猿广泛应用。(现在处在比较边…

thinkPHP controller_suffix 使用方法

在‘config/route.php’配置’controller_suffix’ > true 后, 在controller里面所有的类都要添加Controller为后缀的名字。 在网页使用的时候不用输入Controller的后缀 访问方法,他默认自己带上controller后缀 这样做其实就为了规范controller类

我以前真的不知道独立站还有这么多优点!怪不得他们挤破头也要做!!!

文章目录 1.前言 2.了解独立站 3.独立站的优势有哪些 4.独立站的劣势有哪些 5.新手做独立站需要准备的材料和成本 6.总结 1. 前 言 随着线上购物的日益激烈,独立站成了许多卖家的首选,眼下独立站已经成为出海卖家的标配。 你是不是真的了解“独…

istio学习笔记-安装

Istioldie 1.18 / 安装指南 基于Kubernetes的Istio的微服务架构需要安装以下组件: Istio控制平面组件:包括Istio-Pilot、Istio-Policy、Istio-Telemetry等。这些组件负责微服务的管理和配置,如流量管理、策略执行、遥测数据收集等。数据平面…

图论16-拓扑排序

文章目录 1 拓扑排序2 拓扑排序的普通实现2.1 算法实现 - 度数为0入队列2.2 拓扑排序中的环检测 3 深度优先遍历的后续遍历3.1 使用环检测类先判断是否有环3.2 调用无向图的深度优先后续遍历方法,进行DFS 1 拓扑排序 对一个有向无环图G进行拓扑排序,是将…

重生奇迹mu超级恶魔怎么合成

重生奇迹mu强化恶魔去哪弄 重生奇迹mu强化恶魔不可以合成,在游戏里打怪掉。强化恶魔和强化天使也可以额外给勇士们增加伤害和增强伤害吸收。 开启主线任务的剑士、魔法师、弓箭手回归大礼包,迅速主线任务后打更高级的装备,实力突出的也可以…

Django 的国际化与本地化详解

概要 随着全球化的发展,为 Web 应用提供多语言支持变得日益重要。Django 作为一个功能强大的 Web 框架,提供了一套完整的国际化(i18n)和本地化(l10n)工具,使得开发多语言应用变得简单。本文将详…

【科研新手指南3】chatgpt辅助论文优化表达

chatgpt辅助论文优化表达 写在最前面最终版什么是好的论文整体上:逻辑/连贯性细节上一些具体的修改例子 一些建议,包括具体的提问范例1. 明确你的需求2. 提供上下文信息3. 明确问题类型4. 测试不同建议5. 请求详细解释综合提问范例: 常规技巧…

MVME5100 MOTOROLA 使用GX Works3集成工程软件进行配置

MVME5100 MOTOROLA 使用GX Works3集成工程软件进行配置 例如,在楼宇自动化中,冗余控制器可用于集中控制系统,以管理HVAC、照明、应急响应、电梯系统和其他电气组件。在石油和天然气领域,冗余控制器可以管理起重机设备的制动系统、…

我被这奇葩的答辩评价给惊呆了

最近组里有个小伙伴晋升,我司职级跟腾讯的不一样,可以理解为大概是要晋升高工(T9)吧。 据我了解,我司的晋升答辩还不成熟,没有统一规范和套路,那我就以腾讯的经验来辅导我的小伙伴吧。我想&…

乳品生产企业如何使用乳品加工ERP?乳品加工ERP软件有什么品牌

不同种类的乳制品有不同的制造工艺和仓储环境,并且在品质检验流程、在库时间、成本费用等方面也有很多不同之处。随着经济的发展,消费群体对乳品的安全和质量问题更加重视,而企业外部环境的变化,也导致乳品生产企业面临较大的经营…

java 实现 CAN口通讯

1、引入第三方库 链接&#xff1a;https://pan.baidu.com/s/1JC-Bi_Qgts5a-tGo28JcTQ?pwd6533 提取码&#xff1a;6533 将第三方库 放在libs包里&#xff0c;并在pom文件中增加依赖 <dependency><groupId>libsocket-can-java</groupId><artifactId>…

postgresql数据库优化

目录 概要 优化方法 硬件知识 CPU及服务器体系结构 内存 硬盘 文件系统及I/O调优 文件系统的崩溃恢复 Ext2文件系统 Ext3文件系统 Ext4文件系统 XFS文件系统 Barriers I/O I/O调优的方法 SSD的Trim优化 数据库性能视图 Linux监控工具 数据库内存优化 大页内存配置 vacuum…

Win10系统把D盘空间分给C盘的方法

在Win10系统中&#xff0c;用户发现C盘的空间太少了&#xff0c;导致电脑运作出现了卡顿的问题&#xff0c;所以想把D盘的空间分给C盘&#xff0c;但不清楚具体的操作步骤。接下来小编给大家介绍两种简单的操作方法&#xff0c;帮助大家轻松将Win10系统D盘的空间分给C盘&#x…

小红书自动引流软件的运行分享,以及涉及到技术与核心代码分享

先来看实操成果&#xff0c;↑↑需要的同学可看我名字↖↖↖↖↖&#xff0c;或评论888无偿分享 一、引言 随着互联网的发展&#xff0c;引流成为许多企业和个人获取潜在客户的重要手段。然而&#xff0c;手动引流不仅效率低下&#xff0c;而且效果难以保证。为了解决这一问题…