栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

336、请问下mysql redis es 三写 三删 怎么保证数据一致性 失败了怎么会滚

336、请问下mysql redis es 三写 三删 怎么保证数据一致性 失败了怎么会滚

叫点啥好

字节跳动员工

走最终一致性啊。db提交后用 canal 之类的组件,把binlog发送到mq。拿异构数据同步工具搭两条同步链路,从 mq 取数据,分别写进redis、es

只要涉及到1个以上的系统就没有绝对强一致性

为啥要保证一致性 直接监控错误然后补偿就行了,涉及到实际写操作时一律以mysql数据为准

写前日志,异常重试,幂等

没有保证绝对一致的方法

用事务消息同步es,保证实时性和一致性,用延迟消息同步redis+缓存常驻redis保证一致性

准确来说是很难做的。最简单的确实是最终一致性。。不然别说三写了。双写一般人都要gg

楼上说的没问题了,现在业务这么解决的。
cannal模拟监控binlog数据变动,mq队列重试,超过次数死信队列…实在不行人工干预

大家八股文背的都不一致啊

https://maimai.cn/web/gossip_detail/29782167?src=https://www.mshxw.com/skin/sinaskin/image/nopic.gif>

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/698612.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号