缓存更新策略

redis的缓存更新策略:

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

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

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

  1. 高一致性需求:主动更新,并以超时剔除作为兜底方案
  • 读操作: 缓存命中则直接返回 缓存未命中则查询数据库,并写入缓存,设定超时时间
  • 写操作: 先写数据库,然后再删除缓存 要确保数据库与缓存操作的原子性
相关推荐
Lion Long2 小时前
CodeBuddy 中国版 Cursor 实战:Redis+MySQL双引擎驱动〈王者荣耀〉战区排行榜
数据库·redis·mysql·缓存·腾讯云·codebuddy首席试玩官·codebuddy
星星点点洲13 小时前
【Redis】RedLock实现原理
redis·缓存
加什么瓦13 小时前
Redis——数据结构
数据库·redis·缓存
lybugproducer14 小时前
浅谈 Redis 数据类型
java·数据库·redis·后端·链表·缓存
郭逍遥15 小时前
[工具]B站缓存工具箱 (By 郭逍遥)
windows·python·缓存·工具
心仪悦悦16 小时前
Spark缓存
大数据·缓存·spark
我叫珂蛋儿吖16 小时前
[redis进阶六]详解redis作为缓存&&分布式锁
运维·c语言·数据库·c++·redis·分布式·缓存
Z_z在努力18 小时前
【Redis 进阶】缓存
缓存
?abc!1 天前
缓存(4):常见缓存 概念、问题、现象 及 预防问题
缓存
hycccccch1 天前
Redis的IO多路复用
数据库·redis·缓存