redis缓存一致性问题

本文探讨了Redis缓存一致性中的三大策略:旁路缓存模式、读写穿透和异步缓存写入,以及各自的问题和解决方案。旁路模式在并发更新时可能导致不一致,需要使用锁来保证。读写穿透由缓存自身完成数据库同步,而异步写入在服务器崩溃时可能丢失未刷回的数据。面对操作失败和并发问题,可以采用重试、异步重试和延迟双删策略来缓解不一致性。
摘要由CSDN通过智能技术生成

缓存一致性问题中的三大读写策略?

补充,

  1. 因为db的innodb中使用的mvcc锁机制下来保证线程安全,而mvcc并不是强同步性,其中对读操作是可以允许一定的并发的,而db的读操作会对缓存实行写操作,导致缓存可能会被并发更新,而导致出现db和缓存数据不一致的情况发生。 --解决方案:对缓存的更新实行锁/分布式锁来解决这个并发更新带来的线程安全问题。
  2. 所以,应用层对缓存的更新可能是并发的db对缓存的更新同样也可能是并发的

1. 旁路缓存模式(cache aside Pattern)

  1. 写:先更新DB;然后删除缓存 在这里插入图片描述

  2. 读:先读cache,cache中存在则直接返回;ceche不存在,则读db;将读取到的内容同步到ceche在这里插入图片描述

  3. 问题1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值