Redis 的PSYNC命令

举报
周杰伦本人 发表于 2022/06/25 16:31:03 2022/06/25
【摘要】 Redis 的PSYNC命令 SYNC复制命令 PSYNC命令 总结 ❤️ 感谢大家 Redis 的PSYNC命令从服务器对主服务器的复制分为初次复制和断线后重复制,初次复制是从服务器没有复制过任何主服务器或者从服务器当前要复制的主服务器和上一次复制的主服务器不同断线后的重复制是处于命令传播阶段主从服务器中断了复制,从服务器通过自动重连接重新连上主服务器后继续复制主服务器。 SYNC复制命...

Redis 的PSYNC命令

从服务器对主服务器的复制分为初次复制和断线后重复制,初次复制是从服务器没有复制过任何主服务器或者从服务器当前要复制的主服务器和上一次复制的主服务器不同

断线后的重复制是处于命令传播阶段主从服务器中断了复制,从服务器通过自动重连接重新连上主服务器后继续复制主服务器。

SYNC复制命令

SYNC复制命令是个很耗资源的操作,因为主服务器需要执行BGSAVE命令来生成RDB文件,这个生成操作耗费主服务器大量的CPU、内存和磁盘IO资源,主服务器将自己生成RDB文件发送给从服务器会耗费主从大量的网络资源,对主服务器响应命令请求的时间产生影响,接收RDB文件的从服务器需要载入主服务器发来的RDB文件,载入期间不能处理命令请求。

PSYNC命令

Redis 2.8以后使用PSYNC命令代替SYNC命令,PSYNC具有完整重同步和部分重同步,完整重同步用于处理初次复制,和SYNC命令步骤基本一样,都是通过主服务器创建并发送RDB文件,向从服务器发送保存在缓冲区里面的写命令来进行同步,部分重同步用于处理断线后重复制情况:当从服务器在断线后重新连接主服务器时,主服务器将主从服务器连接断开期间执行的写命令发送给从服务器,从服务器只要接收并执行这些写命令就可以将数据库更新到主服务器当前状态。

SYNC命令需要生成传送和载入整个RDB文件,而部分重同步只需要将从服务器缺少的写命令发送给从服务器执行。

总结

这篇文章我们讲了Redis的复制,通过redis的SYNC复制命令引入PSYNC命令,PSYNC取代SYNC命令具有完整重同步和部分重同步,希望这篇文章对你有帮助

❤️ 感谢大家

如果你觉得这篇内容对你挺有有帮助的话:

  1. 欢迎关注我❤️,点赞👍🏻,评论🤤,转发🙏
  2. 关注盼盼小课堂,定期为你推送好文,还有群聊不定期抽奖活动,可以畅所欲言,与大神们一起交流,一起学习。
  3. 有不当之处欢迎批评指正。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。