Redis之SYNC与PSYNC命令

一、复制SYNC与PSYNC

在Redis主从架构中,主要有以下两种情形需要进行数据同步
(1)当新的服务器执行slave of 命令,成为主服务器的从服务器。这时候从服务器会向主服务器发送SYNC命令,请求全量同步数据,主服务器会进行以下操作

  • 执行BGSAVE命令,在后台生成一个RDB文件,并使用一个缓冲区记录从现在开始执行的所有写命令

  • 主服务器将BGSAVE命令生成RDB文件发送给从服务器,从服务器接收并载入这个RDB文件

  • 主服务器将记录在缓冲区里面的所有写命令发送给从服务器。从服务器执行这些写命令
    (2)当从服务器与主服务器断开连接一段时间后恢复,从服务器需要部分同步从断开连接到重新连接期间主服务器写入的数据,这时候从服务器会向主服务器发送PSYNC命令
    部分重同步功能由以下三个部分构成

  • 主服务器的复制偏移量和从服务器的复制偏移量

  • 主服务器的复制积压缓冲区

  • 服务器的运行ID
    当从服务器断线重连,会比较自身的复制偏移量和主服务器的复制偏移量,并从复制积压缓冲区取出gap数据,同步给从服务器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值