redis 复制

Posted perfy576

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis 复制相关的知识,希望对你有一定的参考价值。

指令:

设置为从服务器 slaveof ip port

开始同步指令 sync

 

1 复制过程

  1. 从服务器发送sync命令以后

  2. 主服务其执行bgsave命令,生成rdb文件,并且使用缓冲区记录从现在开始的所有的修改类的指令

  3. 主服务器bfsave结束以后,将rdb文件发送给从服务器,从服务器载入文件

  4. 主服务器讲缓冲区的所有命令发送给从服务器

  5. 同步完成,之后主服务器发送指令给从服务器

旧版本的缺陷在与断线以后,又要从重新生成一次rdb文件.认为重连的服务器是一台新的服务器,之前的那台丢了.

而新版本则是,从服务器采用psync命令:

  1. 复制积压缓冲冲区

  2. 复制偏移量

    字节为单位

  3. 服务器ID

    用于判断是之前的同一个服务器

利用这三部分向tcp一样,重连以后只需要根据复制偏移量重新传送命令即可.

以上是关于redis 复制的主要内容,如果未能解决你的问题,请参考以下文章

图解Redis,Redis主从复制与Redis哨兵机制

第五章Redis主从复制介绍

详解Redis 主从复制及主从复制原理

Redis源码阅读高可用设计——复制

Redis的复制(基础篇系列四)

Redis 主从复制