redis主从复制原理

建立复制

建立复制的方式很简单。一般在从节点的redis.conf中配置如下两个参数即可:

slaveof redis-master 6379
masterauth 111111

配置复制的方式实际上有3种:

1.在redis.conf中加入slaveof {masterHost} {masterPort};
2.在redis-server启动命令中加入--slaveof {masterHost} {masterPort};
3.直接在redis-cli控制台中,执行slaveof {masterHost} {masterPort}命令.

断开复制:

在slave上执行slaveof no one 来断开与master的复制关系。
注意:slave断开复制后并不会抛弃原有的数据。
通过slaveof命令还可以实现切主操作。执行slaveof {newMasterIp} {newMasterPort}命令即可。

主从架构的拓扑结构

主从复制原理

复制过程

数据同步

全量同步和部分同步

psync命令需要的组件支持

psync命令运行流程

全量复制

部分复制

部分复制是redis针对全量复制的过高开销做的优化措施。使用psync {runid} {offset}命令实现。 当slave复制master时,如果出现网络闪断或者命令丢失等异常请情况,slave回向master要求补发丢失的命令数据。如果master的backlog中存在这部分数据则直接发给slave。 补发的数据远远小于全量数据,所以开销很小。

心跳

异步复制

主从架构中的一些注意点

读写分离

主从配置不一致

规避全量复制

规避复制风暴

参考

《redis开发与运维》

转载于:https://my.oschina.net/grace233/blog/2876441

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值