深入学习Redis(3):主从复制
前言 在前面的两篇文章中,分别介绍了 Redis的内存模型 和 Redis的持久化 。 在Redis的持久化中曾提到,Redis高可用的方案包括持久化、主从复制(及读写分离)、哨兵和集群。其中持久化侧重解决的是Redis数据的单机备份问题(从内存到硬盘的备份);而主从复制则侧重解决数据的多机热备。此外,主从复制还可以实现负载均衡和故障恢复。 这篇文章中,将详细介绍Redis主从复制的方方面面,包括:如何使用主从复制、主从复制的原理(重点是全量复制和部分复制、以及心跳机制)、实际应用中需要注意的问题(如数据不一致问题、复制超时问题、复制缓冲区溢出问题)、主从复制相关的配置(重点是repl-timeout、client-output-buffer-limit slave)等。 系列文章 深入学习Redis(1):Redis内存模型 深入学习Redis(2):持久化 深入学习Redis(3):主从复制 深入学习Redis(4):哨兵 深入学习Redis(5):集群 目录 一、主从复制概述 二、如何使用主从复制 1. 建立复制 2. 实例 3. 断开复制 三、主从复制的实现原理 1. 连接建立阶段 2. 数据同步阶段 3. 命令传播阶段 四、【数据同步阶段】全量复制和部分复制 1. 全量复制 2. 部分复制 3. psync命令的执行 4. 部分复制演示 五、【命令传播阶段】心跳机制 1.