电商项目数据高可用架构设计与实现
2023-10-28 21:54:23 0 举报
如何解决缓存不命中以及数据库更换
作者其他创作
大纲/内容
以数据库中单表转换为多表为例
上线之后订单服务仍然只读旧库,以保证稳定性
保证每一步都是可逆的
对比补偿某一个时间段的数据
单表在迁移到多表的过程中,由于业务没停下,将面临着数据不一致的问题
全量缓存
我们可以通过这里面的时间字段来完成某个时间段的数据库的对比
找出创建时间在这个范围之内修改时间也在这个范围之内的所有记录进行对比同步就行
原理:canal是将自己伪装成一个Mysql的从节点(mysql主库会将修改发送给从库)
如何做到不停机更换数据库呢?
如何解决缓存不命中
利用binlog实时更新redis缓存
seata中的前置镜像和后置镜像也类似
在阿里的建表规范中必须必备三个字段
全部转移到新库
灰度发布
然后慢慢开启新旧库双写
利用阿里的开源组件canal解析binlog日志
公司数据库迁移
如何制作对比补偿程序
在canal 的实现中,canalCLient将数据解析成一条语句变化之前与变化之后的两部分数据,交个其他应用,应用可以选择解析这其中任何一个数据
0 条评论
下一页
为你推荐
查看更多