主从同步数据的流程

简介: 主从同步数据的流程

主从同步分为了两个阶段,一个是全量同步,一个是增量同步

全量同步是指从节点第一次与主节点建立连接的时候使用全量同步,流程是这样的:

第一:从节点请求主节点同步数据,其中从节点会携带自己的replication id和offset偏移量。

第二:主节点判断是否是第一次请求,主要判断的依据就是,主节点与从节点是否是同一个replication id,如果不是,就说明是第一次同步,那主节点就会把自己的replication id和offset发送给从节点,让从节点与主节点的信息保持一致。

第三:在同时主节点会执行bgsave,生成rdb文件后,发送给从节点去执行,从节点先把自己的数据清空,然后执行主节点发送过来的rdb文件,这样就保持了一致

当然,如果在rdb生成执行期间,依然有请求到了主节点,而主节点会以命令的方式记录到缓冲区,缓冲区是一个日志文件,最后把这个日志文件发送给从节点,这样就能保证主节点与从节点完全一致了,后期再同步数据的时候,都是依赖于这个日志文件,这个就是全量同步

增量同步指的是,当从节点服务重启之后,数据就不一致了,所以这个时候,从节点会请求主节点同步数据,主节点还是判断不是第一次请求,不是第一次就获取从节点的offset值,然后主节点从命令日志中获取offset值之后的数据,发送给从节点进行数据同步

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
XML 缓存 负载均衡
dubbo详解及demo实例
dubbo详解及demo实例
814 0
|
小程序 开发工具
如何在小游戏使用键盘进行输入
本文主要内容是在微信小游戏制作工具中使用“键盘”插件,来实现玩家在小游戏中通过键盘进行输入操作的功能。 如果你没有任何的游戏开发经验,欢迎观看我的“人人都能做游戏”系列视频教程,它会手把手的教你做出自己的第一个小游戏。 在游戏中经常需要使用到键盘,让玩家能够在游戏中进行输入操作。今天就分享一下如何在微信小游戏制作工具中使用键盘进行输入。
1083 0
|
机器学习/深度学习 运维 监控
计算机在能源领域的应用
计算机在能源领域的应用
|
MySQL 关系型数据库 数据安全/隐私保护
MySQL 8.0 Access denied for user 'root'@'localhost' (using password: YES) 问题解决
在网上看到有许多此类问题的解决办法,但因版本的不一致导致同一种问题有人可以解决有人不可以解决。在这我给出一种针对当下最新8.0版本的解决办法,本人亲测可行。当然此方法也可用于忘记密码后重置密码。方法步骤:一、启动服务器后,运行 mysqld --console --skip-grant-tabl.
10766 2
|
NoSQL BI MongoDB
深入理解 MongoDB 条件操作符:优化查询、精准筛选、提升性能
深入理解 MongoDB 条件操作符:优化查询、精准筛选、提升性能
385 1
|
安全 数据管理 定位技术
CDGA|自然资源数据治理五部曲,实现数据融合关联、共享可用
在自然资源行业,数据治理是自然资源信息化的工作基础,是推进自然资源治理体系和治理能力现代化进程的必经之路。
|
人工智能 安全 程序员
一文彻底搞清楚HarmonyOS元服务
本文介绍Harmony OS的元服务,这是一种轻量级应用程序形态,具备秒开直达、纯净清爽、服务相伴、即用即走等特性,支持多设备运行,提升服务获取效率。元服务开发流程包括创建项目、UI开发、真机调试、打包测试及上架发布。欢迎关注,一起成长!
4280 0
|
机器学习/深度学习 人工智能 并行计算
深度学习应用篇-计算机视觉-图像分类[2]:LeNet、AlexNet、VGG、GoogleNet、DarkNet模型结构、实现、模型特点详细介绍
深度学习应用篇-计算机视觉-图像分类[2]:LeNet、AlexNet、VGG、GoogleNet、DarkNet模型结构、实现、模型特点详细介绍
深度学习应用篇-计算机视觉-图像分类[2]:LeNet、AlexNet、VGG、GoogleNet、DarkNet模型结构、实现、模型特点详细介绍
|
API
什么是接口幂等
什么是接口幂等
610 0
|
机器学习/深度学习 算法 Python
机器学习中的数学原理——对数似然函数
机器学习中的数学原理——对数似然函数
2303 0
机器学习中的数学原理——对数似然函数

热门文章

最新文章