redis 主从同步时,是同步主节点的缓存积压区的数据,还是同步主节点的aof文件

Redis 的主从同步(replication)是同步主节点的数据到从节点上,但它既不是直接同步 AOF 文件,也不是同步缓存积压区。

当一个 Redis 从节点启动并连接到主节点时,会发生以下步骤:

同步数据集:从节点最初会向主节点发起一次同步请求。主节点会生成一个当前数据集的快照,这通常是通过执行BGSAVE命令产生 RDB 文件的方式完成的,然后主节点将这个 RDB 文件发送给从节点。从节点接收到 RDB 文件后,会加载这个文件来建立自己的数据副本。

复制积压缓冲区(Replication Backlog):主节点在内存中维护一个复制积压缓冲区。这是一个固定大小的缓冲区,用于记录最近写入的所有操作。当从节点完成加载 RDB 文件后,主节点会将从节点断开连接以来积累在复制积压缓冲区中的变更发送给从节点。

命令流同步:一旦初始数据集同步完成,并且所有缓冲区中的命令都已同步,从节点以后会实时接收主节点执行的所有写命令。这样从节点可以保持与主节点的数据一致性。

在这个过程中,AOF(Append Only File)文件并不直接参与主从同步。AOF 是另外一种持久化选项,它记录了对数据库执行的所有写操作,用于恢复数据,而不是用于主从同步。在主从同步期间,即使主节点开启了 AOF 持久化,它也不会将 AOF 文件直接发送给从节点。

因此,简单来说,主从同步涉及到将主节点当前数据的快照(RDB)和之后积压的写命令(通过复制积压缓冲区)同步到从节点,而不是直接同步当前的缓存状态或 AOF 文件。

相关推荐
拍客圈18 分钟前
数据主站+副站做的设置
数据库
计算机学长felix39 分钟前
基于SpringBoot的“面向校园的助力跑腿系统”的设计与实现(源码+数据库+文档+PPT)
数据库·spring boot·后端
金仓拾光集1 小时前
__工艺数据管理的范式转变:金仓数据库替代MongoDB实操实践__
数据库·mongodb
xiaogg36782 小时前
redis-cluster集群配置部署
数据库·redis·缓存
运维小文2 小时前
MySQL高可用方案MIC&mysqlCluster+mysqlRouter
数据库·mysql·mic·mysql高可用·mysqlcluster·mysqlrouter
不剪发的Tony老师2 小时前
Redis Commander:一款基于Web、免费开源的Redis管理工具
数据库·redis
金仓拾光集2 小时前
__金仓数据库替代MongoDB护航医疗隐私:医院患者随访记录安全存储实践__
数据库·安全·mongodb
Tiandaren2 小时前
自用提示词02 || Prompt Engineering || RAG数据切分 || 作用:通过LLM将文档切分成chunks
数据库·pytorch·深度学习·oracle·prompt·rag
PineappleCode3 小时前
三种防重方案对比:标志位、防抖节流、缓存的适用场景
缓存