什么是 Redis 主从同步

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: Redis 主从同步是一种用于数据备份和高可用性的机制,它通过将一个 Redis 实例(主节点)的数据复制到其他 Redis 实例(从节点)来实现。在主从同步中,主节点负责处理客户端的写操作,而从节点则负责接收主节点发送的数据更新,并将其应用到自己的数据集中。

Redis 主从同步是一种用于数据备份和高可用性的机制,它通过将一个 Redis 实例(主节点)的数据复制到其他 Redis 实例(从节点)来实现。在主从同步中,主节点负责处理客户端的写操作,而从节点则负责接收主节点发送的数据更新,并将其应用到自己的数据集中。

主从同步可分为全量同步和增量同步两个阶段。

全量同步 全量同步是在从节点刚刚连接到主节点时进行的一次完整的数据同步过程。当从节点与主节点建立连接后,它会向主节点发送 SYNC 命令,请求进行全量同步。主节点在接收到 SYNC 命令后,开始将自己的整个数据集发送给从节点。

主节点在执行全量同步时,会创建一个 RDB 快照文件,并将该文件通过网络传输给从节点。RDB 快照文件是一个二进制文件,包含了主节点当前的数据集的快照。从节点在接收到 RDB 文件后,会将其加载到自己的内存中,完成数据的全量同步。

全量同步的优点在于能够确保从节点与主节点完全一致的数据集。然而,由于全量同步需要传输整个数据集,对于大规模的数据库来说,可能会占用较长时间和网络带宽。

增量同步 增量同步是在全量同步完成后,从节点与主节点之间进行的持续数据同步过程。在增量同步期间,主节点将自己的写操作追加到一个称为复制积压缓冲区(replication backlog buffer)的缓冲区中。从节点定期向主节点发送 PSYNC 命令,并携带上一次同步时的复制偏移量,请求进行增量同步。

主节点在接收到 PSYNC 命令后,会检查从节点的复制偏移量,并将从该偏移量开始的新写操作发送给从节点。从节点接收到新的写操作后,会将其应用到自己的数据集中。

增量同步的优点在于它是增量的,只传输新增的写操作,而不需要传输整个数据集。这样可以大幅减少网络带宽的使用,并且能够实时保持主节点和从节点之间的数据一致性。

总结起来,Redis 主从同步通过全量同步和增量同步两个阶段,将主节点的数据复制到从节点,实现数据的备份和高可用性。全量同步确保了从节点与主节点拥有相同的数据集,而增量同步则实现了实时的数据更新。通过主从同步机制,即使主节点发生故障,也能够快速切换到从节点,确保系统的持续可用性。同时,主从同步还提供了横向扩展的能力,通过添加更多的从节点,可以提升系统的读取性能和并发处理能力。

相关文章
|
canal 缓存 NoSQL
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
根据对一致性的要求程度,提出多种解决方案:同步删除、同步删除+可靠消息、延时双删、异步监听+可靠消息、多重保障方案
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
|
存储 缓存 NoSQL
Redis常见面试题(二):redis分布式锁、redisson、主从一致性、Redlock红锁;Redis集群、主从复制,哨兵模式,分片集群;Redis为什么这么快,I/O多路复用模型
redis分布式锁、redisson、可重入、主从一致性、WatchDog、Redlock红锁、zookeeper;Redis集群、主从复制,全量同步、增量同步;哨兵,分片集群,Redis为什么这么快,I/O多路复用模型——用户空间和内核空间、阻塞IO、非阻塞IO、IO多路复用,Redis网络模型
Redis常见面试题(二):redis分布式锁、redisson、主从一致性、Redlock红锁;Redis集群、主从复制,哨兵模式,分片集群;Redis为什么这么快,I/O多路复用模型
|
6月前
|
NoSQL 数据库 Redis
什么是 Redis 主从同步?
Redis 的主从同步(replication)机制,允许 Slave 从 Master 那里,通过网络传输拷贝到完整的数据备份,从而达到主从机制。 主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据。一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。 主从数据同步主要分二个阶段 : 第一阶段 : 全量复制阶段 ● slave节点请求增量同步 ● master节点判断replid,发现不一致,拒绝增量同步 ● master将完整内存数据生成RDB,发送RDB到slave ● slave清空本地数据,加载m
|
缓存 运维 NoSQL
Redis主从模式部署
Redis主从模式部署
120 4
|
缓存 NoSQL Redis
Redis主从架构
当看到图示中红色标记的,就代表从节点挂载成功了。
103 0
|
10月前
|
监控 NoSQL 容灾
# Redis主从同步技术分享
Redis作为一个高性能的内存数据库,其主从同步机制是分布式环境下保证数据一致性的重要手段。本文将详细介绍Redis主从同步的实现方法,包括全量同步和增量同步,以及如何配置和监控主从同步状态。
|
NoSQL 安全 容灾
阿里云DTS踩坑经验分享系列|Redis迁移、同步
阿里云数据传输服务DTS在帮助用户迁移Redis数据、同步数据时,在某些复杂场景下会出现报错,或者源库与目标库数据不一致的问题,给用户带来困扰。本文介绍了DTS Redis到Redis迁移、同步过程中的典型问题,以帮助用户更好地使用DTS。
998 2
|
NoSQL Java 关系型数据库
考考你Redis主从,就知道有没深入Redis
大家好,我是南哥。一个对Java程序员进阶成长颇有研究的人,今天继续给大家带来新的一篇Java进阶指南。如果是单机版的数据库,像MySQL、Redis,看起来实现并不复杂。只要支持保存一条数据,同时要能够查询出来。但如果是多机版的数据库呢,各个节点的配合联调是比较复杂的过程,看起来就不是那么简单喽。要考你对Redis深不深入理解,问问Redis多机版相关的问题就知道了。我们今天就来指南下Redis主从架构。
140 1
考考你Redis主从,就知道有没深入Redis
|
监控 NoSQL Ubuntu
|
消息中间件 NoSQL Linux
详解Redis的主从同步原理
只不过在主节点中叫做master_repl_offset; 从节点也有一个偏移量叫做slave_repl_offset,用来记录从节点已经从主节点的repl_backlog_buffer中同步到的最新写指令的位置;
2113 3