redis系列(5):redis主从复制

一、复制:

1. 主从复制

a,方式一、新增 redis6380.conf, 加入 slaveof 127.0.0.1 6379, 在 6379 启动完 后再启 6380,完成配置;

b,方式二、redis-server --slaveof 127.0.0.1 6379

c,查看状态:info replication

d,断开主从复制:在 slave 节点,执行 6380:>slaveof no one

e,断开后再变成主从复制:6380:> slaveof 127.0.0.1 6379

f,数据较重要的节点,主从复制时使用密码验证: requirepass

e,从节点建议用只读模式 slave-read-only=yes, 若从节点修改数据,主从数据不一致

h,传输延迟:主从一般部署在不同机器上,复制时存在网络延时问题,redis 提供 repl-disable-tcp-nodelay 参数决定是否关闭 TCP_NODELAY,默认为关闭

     参数关闭时:无论大小都会及时发布到从节点,占带宽,适用于主从网络好的 场景,

    参数启用时:主节点合并所有数据成 TCP 包节省带宽,默认为 40 毫秒发一次, 取决于内核,主从的同步延迟 40 毫秒,适用于网络环境复杂或带宽紧张,如跨机房

 

2,主从拓扑:支持单层或多层

A,一主一从:用于主节点故障转移从节点,当主节点的“写”命令并发高且需 要持久化,可以只在从节点开启 AOF(主节点不需要),这样即保证了数据的安 全性,也避免持久化对主节点的影响

B, 一主多从:针对“读”较多的场景,“读”由多个从节点来分担,但节点越 多,主节点同步到多节点的次数也越多,影响带宽,也加重主节点的稳定

C,树状主从:一主多从的缺点(主节点推送次数多压力大)可用些方案解决, 主节点只推送一次数据到从节点 1,再由从节点 2 推送到 11,减轻主节 点推送的压力。

2. 复制原理

执行 slave master port 后,

与主节点连接,同步主节点的数据,6380:>info replication:查看主从及同步信息

 

3,数据同步:

redis 2.8 版本以上使用 psync 命令完成同步,过程分“全量”与“部分”复制

全量复制:一般用于初次复制场景(第一次建立 SLAVE 后全量)

部分复制:网络出现问题,从节占再次连主时,主节点补发缺少的数据,每次 数据增加同步

心跳:主从有长连接心跳,主节点默认每 10S 向从节点发 ping 命令, repl-ping-slave-period 控制发送频率

 

 

 

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值