RocketMQ 主从复制|学习笔记

简介: 快速学习 RocketMQ 主从复制,broker 当中的 master 崩溃,消费者可以从 slave 当中获取消息消费,slave 是如何拿到 master 当中的消息?涉及到本节课的重点,主从复制。

开发者学堂课程【RocketMQ 知识精讲与项目实战(第三阶段)RocketMQ 主从复制】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/704/detail/12452


RocketMQ 主从复制

 

内容介绍:

一、消息主从复制的方式

二、配置

三、总结

 

一、消息主从复制的方式

对于 broker 集群存在两种主从复制的方式,第一种是同步复制,第二种是异步复制。同步复制即 当前给 master 进行复制,master 和 slave 完成数据同步之后,当前才是给生产者进行一个反馈。对于生产者而言,同步复制会产生一定的延迟。在同步复制之下,若 master 产生崩溃的问题, slave 上有全部的备份数据,容易恢复,但是同步复制数据量大的话,数据写入会延迟,降低系统的吞吐量。异步复制即信息发送给 master 之后,它可以很快的响应给生产者, master 和 slave 再通过异步的方式去同步数据,在异步复制之下,具有较小的延迟,可以实现比较高的吞吐量。若 master 在接受完数据出现故障,有些数据没有同步到 slave ,可能造成数据的丢失。两种方式各有优缺点,即同步复制可以保证消息不丢失,吞吐量低。异步复制吞吐量高,但 master 故障可能造成数据丢失。

 

二、配置

image.png主要配置 brokerRole 的参数值即可,打开文件找到 brokerRole ,如图所示。发现有三个值,大家会有疑问不是只有同步和异步两种吗?同步双写 master、异步复制 master,当前是从节点则配置为第三点 slave ,对于从节点就配置 slave ,对于主节点才会有同步和异步的复制区别。

 

三、总结

 image.png

一般刷盘机制和主从复制机制配置组合在一起使用,具体如何组合使用,在实际的业务场景当中,我们建议大家将其刷盘配置为异步的方式,主从之间可以使用同步复制,因为同步复制可以最小的保证数据不丢失,基于以上的分析,上图要进行组合,即异步刷盘加主从复制,是较为推荐的一种方式。异步刷盘保证数据的吞吐量,主从复制保证消息的不丢失。

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
7月前
|
消息中间件 负载均衡 算法
【RocketMQ系列十二】RocketMQ集群核心概念之主从复制&生产者负载均衡策略&消费者负载均衡策略
【RocketMQ系列十二】RocketMQ集群核心概念之主从复制&生产者负载均衡策略&消费者负载均衡策略
205 2
|
9月前
|
消息中间件 存储 算法
RocketMQ学习笔记
RocketMQ学习笔记
182 0
|
9月前
|
传感器 网络协议 中间件
Mqtt学习笔记--交叉编译移植(1)
Mqtt学习笔记--交叉编译移植(1)
165 0
|
消息中间件 存储 缓存
RibbitMQ学习笔记之MQ练习(三)
RibbitMQ学习笔记之MQ练习
60 0
|
消息中间件 网络协议 数据中心
RabbmitMQ学习笔记-RabbitMQ集群架构模式
RabbmitMQ学习笔记-RabbitMQ集群架构模式
101 0
|
消息中间件 Java
RabbmitMQ学习笔记-RabbitMQ与SpringBoot2.0整合实战
在使用 RabbitMQ 的时候,作为消息发送方希望杜绝任何消息丢失或者投递失败场景。RabbitMQ 为我们提供了两种方式用来控制消息的投递可靠性模式。
131 0
|
消息中间件 中间件
RibbitMQ学习笔记之MQ发布确认
RibbitMQ学习笔记之MQ发布确认
66 0
|
消息中间件 网络协议
RibbitMQ学习笔记之MQ练习(二)
RibbitMQ学习笔记之MQ练习
45 0
|
消息中间件 网络协议 Java
RibbitMQ学习笔记之MQ练习(一)
RibbitMQ学习笔记之MQ练习
95 0
|
消息中间件 存储 网络协议
RibbitMQ学习笔记之MQ 的相关概念
RibbitMQ学习笔记之MQ 的相关概念
97 0