redis缓存读写顺序的问题

电玩女神 2023-01-23 09:56 125阅读 0赞

如果先删除缓存 再更新DB

会造成什么影响

首先要明白一点 当在DB读取到数据时 如果缓存为空 就写入cache

在这里插入图片描述

最终发现 DB中的数据与cache中的数据是不一致的

那么先更新数据库,再删缓存的操作呢?

我们来一个极端情况

在这里插入图片描述
再次导致了读写不一致 但是仔细想一想 写请求有这么快吗? 2 3步骤连一起执行了

其实正常情况下肯定是14 23 这样就不会不一致了 或者是 1243 缓存是最后删除的

所以只有在极小情况下会造成读写不一致 我们优先选择这种方案

参考文章

两难!先更新数据库再删缓存?还是先删缓存再更新数据库?

3种常用的缓存读写策略!

发表评论

表情:
评论列表 (有 0 条评论,125人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Redis分离

    概述: 1. 为什么要用redis读写分离:单机情况下redis能承受大约2万的QPS(具体数据因机器配置与业务场景而异),如果想要承接更高数值的QP

    相关 Redis分离

    场景:Redis的主从架构,能帮助我们实现读多,写少的情况 意义: 读写分离主要是为了扩展读。你也可以理解为提高了并发吞吐和负载能力。 读写分离一致性