第 133 期 2022-06-09 首个确保缓存与数据库一致的开源方案
YouTube 回看
缓存与数据库的一致性,一直受到大家关注,目前流行的方案,发生以下情况时,都会导致不一致:
很多同学直观地想到通过锁来保证一致性,但依旧不能解决这个问题,见下图:
详情可以参考DDIA作者关于锁的讨论 如何做分布式锁。对于这类问题的通用解决方案是在应用层引入版本,每次写入时,保证旧版本不会覆盖新版本。但是对于缓存应用来说,要求DB层维护版本必定导致应用层做大量的修改,几乎是无法落地的。
本次分享提出了一个无需引入版本,也能够确保最终一致,也可以做到强一致的开源缓存方案 GitHub - dtm-labs/rockscache: The First Redis Cache Library To Ensure Eventual Consistency And Strong Consistency With DB. ,同时该缓存方案还具备防击穿、防穿透、防雪崩等功能
大纲
- 一致性问题
- 解决方案与原理
- 更多特性
- 总结
分享者自我介绍
我是叶东富,开源分布式事务框架dtm作者,北京大学硕士,常青藤爸爸前CTO。C++开源网络框架handy作者。在分布式事务、高可用、分布式共识、性能优化等领域有深入研究。
计划分享时间
2022-06-09 21:00:00 UTC+8
分享地址
Bilibili 直播:
https://live.bilibili.com/h5/11171965
Slides
首个确保与数据库一致的缓存方案.pdf (501.8 KB)