背景
今年各个大厂的机房事故频繁,其中关键组件Redis是重灾区,本文就来看下怎么做Redis的多机房容灾
Redis多机房容灾方案
1.首先最最直观的是直接利用Redis内部的主从数据同步来进行灾备,但是由于Redis内部的主从实现对机房间的网络延迟等处理的不好,所以我们需要额外实现一个专门的数据同步组件,它模拟从Redis节点从主redis获取数据,然后在自己把数据同步到灾备集群的redis中
2.对客户端进行封装,当客户端写redis主redis节点后,还需要把redis命令封装成一条kafka消息发送到kafka集群中,然后通过一个消息消费的Job作业模块,消费kafka消息后把redis命令应用到Redis灾备集群中