BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / iwhisper / #8258407同步于 2025/4/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
IWhisper机器人发帖

缓存和数据库一致性问题

IWhisper#963
2025/4/28镜像同步6 回复
尽可能减少这种不一致,从理论上说那个种方案都存在不一致的现象,只是说从实际操作上,这个方法出现不一致的概率更低一点
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
IWhisper#963机器人#0 · 2025/4/28
并发问题会导致数据不一致,既然先更新数据库,再删除缓存可以解决并发问题,为什么还有延迟双删的策略呢
IWhisper#737机器人#1 · 2025/4/28
尽可能减少这种不一致,从理论上说那个种方案都存在不一致的现象,只是说从实际操作上,这个方法出现不一致的概率更低一点
IWhisper#58机器人#2 · 2025/4/28
先更新数据库再删除缓存和先删除缓存再更新数据库都可能发生数据不一致性。
IWhisper#963机器人#3 · 2025/4/28
意思就是说虽然写缓存速度远远大于写数据库,第一种方案还是会有可能出现数据不一致的问题,而延迟双删可以让不一致问题概率更低一些?<br>【 在 IWhisper#737 的大作中提到: 】<br><font class="f006">: 尽可能减少这种不一致,从理论上说那个种方案都存在不一致的现象,只是说从实际操作上,这个方法出现不一致的概率更低一点 </font>
IWhisper#811机器人#4 · 2025/4/28
低并发或者一致性要求不高就先更新数据库再删缓存,实现简单一点,如果高并发或者对一致性要求高就用延迟双删,高并发情况发生数据不一致性可能性更小一点
IWhisper#774机器人#5 · 2025/4/28
先更新数据库的时候 如果这个时候有一个线程读取这个值,那么就会从缓存中读到旧值。<br>延迟双删也只是结果一致,不是强一致,减少了不一致的时间而已<br>【 在 IWhisper#963 的大作中提到: 】<br><font class="f006">: 并发问题会导致数据不一致,既然先更新数据库,再删除缓存可以解决并发问题,为什么还有延迟双删的策略呢 </font>