缓存更新策略

redis的缓存更新策略:

  • 先删除缓存,在更新数据库,缺点:当线程1进行一个更新的操作,先进行缓存删除,在修改数据库,但是修改数据库之前,线程2 进行查询缓存的操作,未命中,查找数据库,写入缓存,线程1修改完成后,但是此时缓存中的数据还是旧数据,会出现数据不一致问题,只有等这个缓存过期,下次查询时,才会获取正确的信息.
  • 先操作数据库,在删除缓存,这个方法显然比上一个更优

缓存更新策略的最佳实践方案:

1,低一致性需求:使用Redis自带的内存淘汰机制

  1. 高一致性需求:主动更新,并以超时剔除作为兜底方案
  • 读操作: 缓存命中则直接返回 缓存未命中则查询数据库,并写入缓存,设定超时时间
  • 写操作: 先写数据库,然后再删除缓存 要确保数据库与缓存操作的原子性
相关推荐
hj104313 小时前
redis开启局域网访问
数据库·redis·缓存
秋已杰爱15 小时前
Redis常见命令
数据库·redis·缓存
程序员陆通18 小时前
Java高并发场景下的缓存穿透问题定位与解决方案
java·开发语言·缓存
朱皮皮呀1 天前
Redis缓存详解:内存淘汰和缓存的预热、击穿、雪崩、穿透的原理与策略
数据库·redis·缓存
Lucky GGBond1 天前
Vue 项目中主从表异步保存实战:缓存导致接口不执行问题排查与解决
缓存
Code季风2 天前
如果缓存和数据库更新失败,如何实现最终一致性?
数据库·分布式·缓存·微服务·性能优化
stevenzqzq2 天前
glide缓存策略和缓存命中
android·缓存·glide
liulanba2 天前
Redis 缓存问题详解及解决方案
redis·缓存·oracle
笑衬人心。2 天前
缓存的三大问题分析与解决
java·spring·缓存
Zfox_2 天前
Redis应⽤-缓存与分布式锁
服务器·数据库·redis·分布式·缓存