redis集群和主从复制的原理详解

这篇开始进行redis集群和主从复制的原理详解,前几篇我们都是分享的redis在单节点环境中运行的操作,而实际互联网项目中一般都是部署的redis集群,主从复制、主备等环境,今天我们开始详细分享:

1、单实例部署redis的弊端分析:

1)单点故障:即如果该服务挂了,redis也就完全不能用了。

2)容量有限:一台服务的容量一般不大,存储的内容大小有限。

3)压力:所有的读写操作都在改服务上进行,压力回比较大。

2、怎么解决这些弊端呢?

1)集群部署一主多从,主挂了,某个从节点变成主节点。

2)多主多从可以解决容量问题,或者一个项目中不同的业务类型用不同的redis。

3)集群可以设置一写多读,比如主写从读。

如图所示:

x横轴代表集群,y轴代表不同业务采用不同redis,z轴代表多主多从。

3、理论上说,解决一个问题可能回出现新的问题:

比如 主从复制时一致性问题,可用性问题,分区容错性问题,即所谓的CAP理论;一般采用AP或者CP模式,不会满足三项。一主两从的业务场景分析:


1)强一致性,破坏可用性

 2)弱一致性,有丢失数据风险

 

3)最终数据一致性:

注意: 有可能取到不一致的数据 ,主要强调:强一致性。

4、对redis监控的设计思想:

1)三台监控

 2)四台监控

 3)五台监控

 

都给出OK 算强一致性,部分给出结果:

5、总结用基数台监控或者搭建集群的原因:

1)一般人认为,技术台容易选举leader,在集群环境下,不容易出现脑裂。这只是一个表象,核心原因是下面几点。

2)奇数台和偶数台承担的风险一样,比如3、4台承担的风险都是1,而4台的成本更大!

3)同时,偶数台发生风险的概率更大,比如3、4台中,4台发生风险的概率更大一些。

6、演示:

创建:

 

分别 启动:6379、6380、6381,并打开客户端

 成功:

开客户端:

 

 

7、主从设置:

帮助命令

 6379为主:即6380追随6379

6379的日志:

 

6380日志:

 

此时主从设置好了,6379 主,6380从 

8、测试保存,主从复制:

6379保存:

 

复制到6380:

 

 默认情况下从是禁止写入的:

此时 6381还没有设置,即数据没有同步过来: 

 6381先设置一个数据:

然后设置从:

 

在看6381的数据时:

 

发现自己6381的老的数据清除了,有的是从主节点复制过来的。日志见证:

 

 

也发现了RDB文件:

 另外从挂了:

再重启之后依然同步主的增量数据。

ctrl+c  6379主挂了,从可以立刻发现:

 

6380自己主设置:

 6381去追随:

这是人工切换主从节点,比较土! 

 

9、哨兵监控、选举:

1)原理图:

 核心配置:

replica-serve-stale-data yes

replica-read-only yes

repl-diskless-sync no

repl-backlog-size 1mb 

#增量复制

min-replicas-to-write 3
min-replicas-max-lag 10

2)添加配制文件:vi 26379.conf

3)内容:

 复制拷贝到每个节点上

都改一下:

 5) 启动:

启动:.。。。。127.0.0.1 6379

 启动:

监听命令查看 

 

继续:

 启动哨兵:

6)都配置:

 查看:

 查看:

 查看:

 10、主挂了:

1)选6381为主:

 6380 也同步到数据,紧跟6381数据变化。

2)并且哨兵改了配置文件:

发现其他哨兵的原理图:

 到此,集群的原理和演示分享完毕,下次分享容量,分片模式等敬请期待! 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寅灯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值