RocketMQ集群原理及集群搭建

RocketMQ 的双主双从集群搭建 文章目录1:介绍2:准备2.1 准备虚拟机2.2 修改虚拟机的ip地址 1:介绍 1:本次搭建集群采用异步复制,主备有短暂消息延迟,毫秒级 2:即使磁盘损坏,消息丢失的非常少,且消息实时性不会受影响,因为Master 宕机后,消费者仍然可以从 Slave消费,此过程对应用透明。不需要人工干预。 3:Master 宕机,磁盘损坏情况,会丢失少量消息。这个是 rocket 3.5 之前都存在的,3.6之后可以支持主备切换,这个我们下次搭建。 2:准备 准备了 4台虚拟机,IP 地址准备设置成 192.168.1 阅读详情

RocketMQ各个角色信息

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

集群搭建模式

在这里插入图片描述

集群工作流程

在这里插入图片描述

集群搭建

同步双写
在这里插入图片描述

1. 主机规划

序号ip角色架构模式
110.211.55.10namesrv,brokerserverMaster1,Slave2
210.211.55.8namesrv,brokerserverMaster2,Slave2

2. Host配置如下

#nameserver
10.211.55.10 rocketmq-nameserver1
10.211.55.8 rocketmq-nameserver2
#broker
10.211.55.10 rocketmq-master1
10.211.55.10 rocketmq-slave2
10.211.55.8 rocketmq-master2
10.211.55.8 rocketmq-slave1

3. 关闭或者设置相关防火墙或者放开相关rocketmq端口

#关闭防火墙
systemctl stop firewalld.service
#查看防火墙状态
firewall-cmd --state
#禁止防火墙开机启动
systemctl disable firewalld.service

在这里插入图片描述
RocketMQ默认使用3个端口:9876 、10911 、11011 。如果防火墙没有关闭的话,那么防火墙就必须开放这些端口:

# 开放name server默认端口
firewall-cmd --remove-port=9876/tcp --permanent
# 开放master默认端口
firewall-cmd --remove-port=10911/tcp --permanent
# 开放slave默认端口 (当前集群模式可不开启)
firewall-cmd --remove-port=11011/tcp --permanent 
# 重启防火墙
firewall-cmd --reload

4. 环境变量配置

设置.bash_profile相关配置
在这里插入图片描述

5.创建消息存储路径

#在同一宿主机上面如果有多个broker创建的相关路径不能冲突,具体如下同一宿主机上的broker路径配置
mkdir -p /usr/local/rocketmq/store
mkdir -p /usr/local/rocketmq/store/commitlog
mkdir -p /usr/local/rocketmq/store/consumequeque
mkdir -p /usr/local/rocketmq/store/index

6.broker配置文件

修改 10.211.55.10 的 broker-a.properties,master1

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a
#0 表示 Master,>0 表示 Slave
brokerId=0
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=10911
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/storeamaster
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/storeamaster/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/storeamaster/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/storeamaster/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/storeamaster/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/storeamaster/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SYNC_MASTER
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=SYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128

修改 10.211.55.10 的 broker-b-s.properties,slave2

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-b
#0 表示 Master,>0 表示 Slave
brokerId=1
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=11011
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/storebslaver
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/storebslaver/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/storebslaver/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/storebslaver/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/storebslaver/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/storebslaver/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SLAVE
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128

修改 10.211.55.8 的 broker-b.properties,master2

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-b
#0 表示 Master,>0 表示 Slave
brokerId=0
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=10911
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/storebmaster
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/storebmaster/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/storebmaster/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/storebmaster/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/storebmaster/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/storebmaster/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SYNC_MASTER
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=SYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128

修改 10.211.55.8 的 broker-a-s.properties,slave1

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a
#0 表示 Master,>0 表示 Slave
brokerId=1
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=11011
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/storeaslaver
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/storeaslaver/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/storeaslaver/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/storeaslaver/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/storeaslaver/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/storeaslaver/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SLAVE
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128

7. 如果是本机测试修改runserver.sh,和runbroker.sh里面的最大和初始化内存,改为256m

在这里插入图片描述

服务启动

1.启动namesrv集群

分别进入10和8机器
1.cd /root/rocketmq-all-4.9.1-bin-release/bin
2.nohup sh mqnamesrv &

2.启动broker集群

在10.211.55.10启动master1和slave2

nohup sh mqbroker -c /root/rocketmq-all-4.9.1-bin-release/conf/2m-2s-sync/broker-a.properties &
nohup sh mqbroker -c /root/rocketmq-all-4.9.1-bin-release/conf/2m-2s-sync/broker-b-s.properties &

在10.211.55.8启动master2和slave1

nohup sh mqbroker -c /root/rocketmq-all-4.9.1-bin-release/conf/2m-2s-sync/broker-b.properties &
nohup sh mqbroker -c /root/rocketmq-all-4.9.1-bin-release/conf/2m-2s-sync/broker-a-s.properties &

3.查看mq启动情况如下

在这里插入图片描述

RocketMQ学习教程:09.深入理解NameServer【云图智联】 1 NameServer介绍 Name Server 是专为 RocketMQ 设计的轻量级名称服务,具有简单、可集群横吐扩展、无状态,节点之间互不通信等特点。整个Rocketmq集群的工作原理如下图所示: 可以看到,Broker集群、Producer集群、Consumer集群都需要与NameServer集群进行通信: Broker集群: Broker用于接收生产者发送消息,或者消费者消费消息的请求。一个Broker集群由多组Master/Slave组成,Master可写可读,S... 阅读详情

相关推荐

深入了解RocketMQ集群架构原理以及高可用集群搭建详细过程

深入了解RocketMQ集群架构原理以及高可用集群搭建详细过程RocketMQRocketMQ简单介绍基本概念特性深层解析集群原理技术架构部署架构Rocketmq高可用集群搭建详细过程集群部署方式单Master模式多Master模式多Master多Slave模式-异步复制------以这种方式部署集群为例来搭建集群多Master多Slave模式-同步双写------线上使用的话,推荐使用此模式集群集群搭建环境双主双从异步复制集群部署情况集群搭建过程创建目录下载解压文件到 /usr/local/目录下用户和组

weixin_44798288的博客 3689

RocketMQ服务中各端口号说明

要开放的端口一般有4个:9876,10911,10912,10909作用说明

Taiyii的博客 2万+

Centos7 部署 RocketMQ 高可用集群

Centos7 部署 RocketMQ 高可用集群。将原来的配置内容全部注释掉(之后的properties配置文件都得这样)发送成功后我们可以到控制台查看消息和消费情况等信息。10.0.61.12上操作。10.0.61.21上操作。10.0.61.21上操作。10.0.61.22上操作。10.0.61.22上操作。10.0.61.21上操作。10.0.61.21上操作。

专注基础架构领域 2076

rocketmq常用端口(需开放端口)

10909:fastRemotingServer使用的监听端口,与remotingServer类似,vipChannelEnabled开启时,消息发送到fastRemotingServer。使用中遇到的场景:10911端口未开发,消费者订阅进行消费时,无消息可消费,查看客户端日志发现getConsumerIdListByGroup exception失败。9876:NameServer通信端口。客户端通过该端口与NameServer通信。rocketmq 常用默认端口:9876、10911、10909。

k_c123456的博客 7760

Android-S无线模块前瞻

WiFi - mainlane非强制 S 采用反射的方法直接加载wifiservice,直接hook在systemserver上,无编译依赖。gms可以动态替换wifi服务。 R 采用直接启动service的方式,wifiservice仍然map在systemserver上。 WiFi - 11ad接口支持 11ad被wifi联盟商业化为WIGIG,提供短距的60GHZ载波,理论速度为当前5G 11ac的6倍。市面上基本没有手机支持,需要独立的芯片支撑此功能。 传输距离为3m以内,外界d.

头铁的伦的博客 1042

YOLOv8改进002:添加小目标检测头(小目标检测大量涨点)

YOLOv8 目标检测算法改进之添加小目标检测头,亲测在小目标检测的数据集上有大幅度的涨点效果(mAP直接涨了 0.04 左右)。

m0_46496775的博客 9877

rocketMQ —— 02(集群搭建、rocketmq工作原理)

目录标题一、相关推荐二、基本架构图:三、集群模式 一、相关推荐 rocketMQ —— 01(前言、安装、基础概念) 二、基本架构图: 三、集群模式 三种发消息的模式: 单向发送,异步发送,同步发送 流量消峰、消息分发 rockerMQ:只接受字节数组(送、发都是)。 同类笔记参考 ...

a123123sdf的博客 8075

PET,CT图像融合笔记

PET-CT怎样进行图像融合?图像融合实现CT与PET图像的融合 OpenCV实现(附实验结果)

chenran187906的博客 8409

RocketMQ集群原理及双主双从集群搭建

RocketMQ的三种自带集群模式为: (1)双MASTER : 优点是配置简单、快捷,但是一旦MASTER机器宕机或出现问题就无法提供服务; (2)双MASTER双SLAVE同步双写: 比异步复制的性能差10%,但能保证数据不丢失; (3)双MASTER双SLAVE 异步复制:性能最好,但是遇到突发情况会有少量数据丢失。 上图为双主双从集群原理图,其中Name Server是一个几乎...

wangpf2011的博客 3580

GOM Correlate拉伸试验后处理操作

本文描述了使用GOM Software 2022对拉伸试样进行后处理的操作,包括设置检测点、引伸计、输出应变数据到表格、输出报告为视频等

qq_45008924的博客 4662

集成calibre到cadence virtuoso环境中 load: can‘t access file - “/opt/eda/Mentor/lib/calibre.skl“

项目场景: 设想是将Calibre集成到cadence virtuoso中,但网上的解决办法尝试过在本机上实验都有点问题,因此想记录下来我的解决办法仅供参考。 问题描述: 安装好cadence, calibre之后打开virtuoso,CIW窗口显示 *Error* load: can't access file - "/opt/eda/Mentor/lib/calibre.skl" 问题是出在calibre.skl的加载路径出错,尝试网上的在工程目录下修改.cdsinit文件,添加calibre安装

weixin_52714276的博客 1万+

04.RocketMQ集群搭建原理

一、数据复制与刷盘策略 复制策略:Broker的Master与Slave间的数据同步方式,分为同步复制与异步复制。 同步复制:消息写入Master后,等待Slave同步数据成功后才返回ACK。 异步复制:消息写入Master后,master立即向producer返回成功ACK,无需等待slave同步数据成功。降低系统写入延迟,RT变小,提高吞吐量。 刷盘策略:消息发送到broker内存后消息持久化到磁盘的方式,分为同步刷盘与异步刷盘 同步刷盘:消息持久化到broker到磁盘后才算消息写入成功。 异步刷盘.

kk_lina的博客 440

HTTPS接口测试翻车实录:为什么浏览器能访问而curl报证书错误?

本文深入分析了HTTPS接口测试中浏览器访问正常而curl报证书错误的典型问题。通过对比浏览器、Postman和curl的工具行为差异,结合Nginx日志与Wireshark抓包,揭示了问题根源在于网络架构中HTTPS请求被意外“降级”为HTTP传输,导致SSL握手失败。文章重点探讨了curl工具严格验证机制暴露的`Peer's Certificate issuer is not recognized`错误,并提供了网络配置修正方案与标准化测试流程。

u9v0w的博客 278

最新搭建高可用 RocketMQ 集群_rocketmq线下怎么卖的,原理竟然是这

RocketMQ是一个由阿里巴巴开源的消息中间件,2012年开源,2017年成为apache顶级项目。RocketMQ在阿里内部应用是非常广泛的,阿里内部的几千个应用都运行在RocketMQ之上,双十一期间需要处理亿万级别的消息,TPS可以达到几十万。目前支持Java、C/C++,Python、Go四种语言访问。RocketMQ现在有两个版本,一个是社区开源版,一个是商业的云服务版(AliwareMQ)。最新版本:4.8.0(本文演示版本)。

2401_84788430的博客 949

2026最新华为OD机试新系统机考真题- 真题题库目录|全覆盖题库 + 逐点算法考点详解

2026年4月1日起,华为OD机试正式切换至新系统模式!采用力扣模式,无需自己写输入! 难度大幅度降低。正在备考华为OD机试的同学,优先刷新系统机试真题,可大幅提升通过率。 新系统考题考点与旧版一致,无需重新适应。本专栏所有算法题均配有详细思路解析,并提供C语言、JS、C++、Python、Go、Java多语言源码实现。订阅后私信即可开通专属OJ刷题权限,高效备考一次上岸!

算法大师! 2538

10、网络安全工具:Bettercap 与 Web 应用测试工具全解析

本文详细解析了网络安全工具Bettercap及其在中间人攻击和无线攻击中的应用,同时介绍了多种Web应用测试工具,如Amass、Cadaver、Dirb等,并探讨了工具的使用场景、流程、注意事项以及未来发展趋势,为网络安全测试提供了全面的指导。

u0v1w2x3的博客 226

RocketMQ原理及集群搭建步骤

为什么使用RocketMQ?       RocketMQ是一款分布式、队列模型的消息中间件,是由阿里巴巴团队设计的,具有以下特点: 1、亿级消息堆积能力,消息堆积后,写入低延迟。 2、支持重试机制 3、支持持久化机制 4、支持Topic与Queue两种模式 5、能够保证严格的消息顺序、事务消息 6、强调集群无单点,可扩展 7、丰富的消息拉取模式 8、历经多次天猫双十一海量消息...

zp的博客 9436

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Java架构学习(三十五)RocketMQ基础&rocketMQ概述&rocketMQ原理&rocketMQ集群&rocketMQ搭建集群&rockeyMQAPI&rocketMQ解决幂等问题

一、rocketMQ概述 1、rocketmq:分布式消息中间件,支持集群,效率非常高。 2、activityMQ是点对点通讯,发布订阅、 本身不支持集群,不支持分布式。 为什么MQ发生消息堆积,消费者不会宕机? 答:因为MQ中有消息缓存机制。 MQ发生消息堆积,消费者不会宕机,但是消息中间件可能会宕机。 3、rocketmq 海量消息堆积、支持上万个队列。 4、消息中间件集群的目的是什么...

Leeue李月 553

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

RocketMQ快速入门:主从、集群模式原理及搭建实操(十一)

在学习完rocketmq的基础知识后,我们进入rocketmq高可用保障的章节,即从服务部署架构角度,探索其支持的多节点部署模式。

55555的博客 2469

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Centos7搭建RocketMq集群

Centos7搭建RocketMq集群 每天多学一点点~ 话不多说,这就开始吧… 文章目录Centos7搭建RocketMq集群1.前言1.环境要求2. 下载3. 安装Rocketmq4. 启动Rocketmq5. 搭建Rocketmq集群6.结语 1.前言 年底了,虽然忙,但还是要抽时间学习点东西~ 士不可以不弘毅,任重而道远,加油~ 之前学习了rabbitmq,但是rabbit有性能瓶颈,为了...

爆裂无球的程序空间 1045

RocketMQ学习笔记

kafka适合于日志收集的场景(不需要太多topic;topic下面的partition多了会造成写文件的速度变慢,因为要造很多索引)RocketMQ更适合于电商场景(适用于topic特别多的情况)

渔阳的博客 1906

RocketMQ 集群搭建详细指南

RocketMQ是阿里巴巴开源的一款分布式消息中间件,具备高性能、高可用性和强大的消息传递能力,能够胜任从实时消息传递、事务消息到事件驱动架构的多种场景。RocketMQ 的核心架构设计使其能够支持高并发、低延迟的场景,尤其是在互联网公司和金融领域广泛应用。为了确保系统的高可用性和扩展性,我们通常会在生产环境中搭建RocketMQ 集群。通过集群化部署,RocketMQ 可以在节点故障时保持正常运行,并通过水平扩展来提升系统的吞吐能力。

hello.reader 2719

RocketMQ-Dledger高可用集群,为什么是高可用?

Dledger高可用集群,为什么说是高可用的?一文简要说明和如何搭建服务。

1475

RocketMQ基本实现原理

一、RocketMQ架构 RocketMQ架构上主要分为四部分,如上图所示: Producer:消息发布的角色,支持分布式集群方式部署。Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递,投递的过程支持快速失败并且低延迟。 Consumer:消息消费的角色,支持分布式集群方式部署。支持以push推,pull拉两种模式对消息进行消费。同时也支持集群方式和广播方式的消费,它提供实时消息订阅机制,可以满足大多数用户的需求。 NameServer:NameServe..

qq_57558631的博客 6540

教你一手如何基于RocketMQ搭建生产级消息集群

前言 目前很多互联网公司的系统都在朝着微服务化、分布式化系统的方向在演进,这带来了很多好处,也带来了一些棘手的问题,其中最棘手的莫过于数据一致性问题了。早期我们的软件功能都在一个进程中,数据的一致性可以通过数据库本地事务来加以控制。而在分布式架构下,原本比较完整的本地功能可能被拆分成了多个独立的服务进程。与之前相比,同样一笔业务订单此时可能会经历很多服务模块的处理,调用链路会变得很长,例如某电商平...

aixuexidemomo的博客 293
上一篇: RocketMQ入门和基本搭建
下一篇: rocketmq console搭建和简单使用
Persistence___
博客等级 码龄8年 47粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值