redis集群【主从模式】

 

结构

一主一从

用于主节点故障转移从节点,当主节点的“写”命令并发高且需要持久化,可以只在从节点开启AOF

一主多从

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

树状主从

减轻主节点推送的压力

数据同步机制

2.7版本之后采用全量复制、增量复制

  1. 全量复制:初次复制时(第一次建立SLAVE)
    • slave启动并连接到master,向master发送一个sync命令
    • master以RDB的方式全量、异步持久化生成rdb文件,期间将写命令进行缓存
    • master将rdb文件发送给slave,slave存入磁盘
    • slave将清空缓存数据,重新加载rdb文件数据
    • master将缓存数据同步到slave
    • master将再后来的写命令同步到slave
  2. 部分复制:slave故障后重连master时,主节点通过缓冲区和偏移量补发缺少的数据
  3. 增量复制:正常工作时,master将每个写命令发送给slave执行

缺点

  1. 不具备自动容错和恢复功能:主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启(slave)或者手动切换前端的IP(master)才能恢复
  2. 主机宕机,宕机前有部分数据未能及时同步到从机,切换IP(因为slave不会竞升为master)后还会引入数据不一致的问题,降低了系统的可用性
  3. 主从复制过程(全量复制)会对集群的服务能力产生不小影响(master负载较高时)
  4. 只有 master 能写,写能力有限
  5. 存储能力有限
  6. 较难支持在线扩容

全量复制带来的问题

当数据量比较大时可能会发生一下问题:

  1. slave同步较慢
  2. 如果master负载很高,复制过程会给其带来压力

为此可以这样解决:

  1. 如果需要主从结构,事先配置好所有的slave,避免中途增加slave
  2. 选择在master低峰时增加slave

主从架构

Redis 主从架构 -> 读写分离 -> 水平扩容支撑读高并发.

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值