redis双向同步工具 renxl-rotter【https://github.com/leonchen83/redis-replicator

工具目标旨在完成同城双活中的redis双向同步工作

采用redis-replicator作为协议解析器

设计目标要要求准实时 高性能;可靠性 manger 和node集群  task异常自动调度;借鉴 canal otter设计思想,充分解读redis sync2协议;

 

目前github上存放第一个目标 redis双向同步   

 

其他未开源版本包含目标:

HA node异常自动调度 同步任务异常自动调度

滑动窗口重试

监控接入prometheus

web管控台

欢迎大家参考

 

为什么要做这个工具,而不用redis-replicator

这里就要涉及双机房的带宽问题 大家可以参考otter设计

源到目标如果直接同步,就会涉及性能问题

所以采用批量处理+多线程处理方式

又会引来顺序问题,同样还是参考otter架构,采用滑动窗口在保障并发的同时,保障顺序

renxl-otter的同步任务并不是直接多线程控制并发,二是通过配置的并发数和滑动窗口共同约束并发

 

 

而笔者开发的最终目的是为了实现异地双活架构

由于业务的复杂性,我们要做到数据库和缓存同时双向同步,从而实现数据双活能力,来支持我们的业务

 

笔者致力于全链路压测[参考我的github],同城双活,异地多活 以及源码深研,领域模型和中台战略等方向,欢迎在我的github留言

 

由于工作,草草留下这篇文章

后期可能会出全链路压测视频教程以及同城双活视频教程 欢迎大家指导交流

 

 

 

 

 

 

 

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐