Mysql与Resi延迟双删策略原理解析

 

1. 概述

本文是在观看腾讯视频学习总结而来的,这里先大致粗略的记录一下,后面会再重新整理

MySQL与Redis延迟双删策略原理解读?
课程内容:
1.MySQL与Redis数据一致性协议方案有那些?
2.到底是先删除缓存?还是先更新数据库?
3.为什么不推荐使用更新数据,在更新缓存?
4.如何利用延迟双删除策略?实现一致性问题
5.延迟双删除策略,存在那些优缺点 
6.总结:MySQL与Redis数据一致性问题
腾讯课堂直播:https://m.ke.qq.com/m-core/live.html?cid=273548&term_id=100323286

 

 

Mysql与Resi延迟双删策略原理解析_第1张图片

线程1写、线程2度

删除Redis缓存key

2. gengxin shujuku dbxinxi 

3. 延迟删除Redis 缓存key

 

线程1在更新db之前,另外线程在读的时候,将原来db的数据同步到redis中。

线程1更新db成功后,再把Redis缓存清理一次。

 

 

 

双写一致性协议(共4种策略)

根据实际项目要求来选择,例如并发量等等。

1、小项目、并发量低

不追求强一致性时

可以先更新db、再删除redis;;或者先删除Redis再更新db。

2、项目大时

建议使用延迟双删策略

 

可以有4中删除策略

策略1、先更新db,再删redis

 

  • 策略2、先再删redis,再先更新db,最后延迟删除Redis(延迟双删策略,可取的方法)

并发量大采用这种延迟双删策略

如果第三次删除失败,就要不断的去重试,删除Redis(例如使用for循环,或者死循环尝试删除Redis缓存)

 

 

2. 参考资料

https://ke.qq.com/course/273548?taid=10520037060521100&tuin=388db9e0

 

 

你可能感兴趣的:(数据库,Java,架构师,Mysql与Redis同步,延迟双删,Mysql,Redis缓存)