缓存更新策略

redis的缓存更新策略:

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

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

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

  1. 高一致性需求:主动更新,并以超时剔除作为兜底方案
  • 读操作: 缓存命中则直接返回 缓存未命中则查询数据库,并写入缓存,设定超时时间
  • 写操作: 先写数据库,然后再删除缓存 要确保数据库与缓存操作的原子性
相关推荐
刘~浪地球3 小时前
Redis 从入门到精通(九):事务详解
数据库·redis·缓存
一个有温度的技术博主6 小时前
告别“竹篮打水”:Redis单点瓶颈与分布式缓存架构全解析
redis·分布式·缓存
一个有温度的技术博主8 小时前
Redis RDB持久化原理:一次快照背后的“分身术”与“读心术”
数据库·redis·缓存
无尽的罚坐人生8 小时前
460. LFU 缓存
缓存
李昊哲小课8 小时前
pip缓存配置
python·缓存·pip
手握风云-9 小时前
Redis:不只是缓存那么简单(二)
redis·缓存
一个有温度的技术博主9 小时前
告别单点瓶颈:Redis主从架构与读写分离实战
redis·分布式·缓存·架构
清水白石0089 小时前
《从缓存到数据库:一致性之痛与工程之道》
数据库·python·缓存
刘~浪地球11 小时前
Redis 从入门到精通(十):管道技术
数据库·redis·缓存
iNgs IMAC20 小时前
redis 使用
数据库·redis·缓存