1.缓存雪崩:缓存挂了,所有请求直接打到数据库了

例如:redis挂了,查询数据的时候发现redis不可用,所有请求直接打到数据库了

解决办法:1.缓存集群高可用,2首先本地一级缓存,其次redis二级缓存,最后数据库

2.缓存击穿:所有请求在缓存中没有找到数据,直接打到数据库了

例如:查询数据的时候,发现redis中没有,再请数据库也没有的情况

解决办法:1.双重验证,2,将查询的空数据也写入到缓存中并设置一个过期时间

3.缓存一致性问题(内存+数据库)

查询数据逻辑:先查缓存,缓存没有则查询数据库,将返回数据写入到缓存,并返回给调用方

修改数据逻辑:先删除缓存中数据,再插入或更新数据库

数据强一致性:读和写数据的逻辑放入队列中串行执行(代码已经实现,用于工作实战中了)

相关文章:

  • 2022-03-02
  • 2023-03-30
  • 2021-09-09
  • 2021-12-12
  • 2022-01-11
  • 2021-05-05
  • 2021-08-22
猜你喜欢
  • 2021-07-17
  • 2021-10-10
  • 2021-10-11
  • 2021-10-22
  • 2021-11-09
  • 2021-08-21
  • 2021-08-14
相关资源
相似解决方案