Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

行业案例:OPPO缓存层6次版本迭代的异地多活实践 PDF 下载


分享到:
时间:2024-11-02 08:47来源:http://www.java1234.com 作者:转载  侵权举报
行业案例:OPPO缓存层6次版本迭代的异地多活实践
失效链接处理
行业案例:OPPO缓存层6次版本迭代的异地多活实践  PDF 下载 

 
 
相关截图:
 


主要内容:

针对上面起源版本问题我们做一些解决办法。

可靠的DB

我们引入一个DB,把同步进程每次同步的位置写入到DB里面去,同步进程重启的时候首先从DB找到自 己的offset,然后从offset后面开始数据同步就可以了。

流水记录

参考mysql的方式,把所有的写入数据按照时间的先后用流水日志的方式记录下来不能被修改,在没有 同步到别的机房前也不能被删除。 经过上面的修改后我们得到修改版本一。

把修改版本一放到生产环境跑了几天后,又会发现一些问题:

性能低下

同步进程每次同步一条数据都要修改Mysql同步offset,导致同步进程性能低下

单机磁盘空间不够

因为物理机器上会混部多个服务,每个服务都在往磁盘写入数据 跨机房同步本身又比较慢 可能导致单机磁盘空间被打爆,磁盘被打爆后数据再也无法写入了。

数据回环

Server A的数据被同步进程A同步到B机房以后, 被写入到数据流水B,然后同步进程B又把这个流水同 步给了A机房,就这样形成了一个循环回路浪费了网络带宽和资源。

 




 


------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐