什么是缓存雪崩、击穿、穿透

  • 缓存雪崩: 如果是大量缓存在同一时间过期或者redis服务器宕机,导致大量的数据请求无法在Redis中处理,而直接去访问数据库,从而导致数据库压力剧增,严重可能会造成数据库宕机或者系统崩溃。
    解决方法:
  1. 对于大量缓存在同时过期:①. 均匀设置过期时间(可以在原来过期时间上加上一个随机数) ②. 互斥锁() ③. 后台更新缓存
  2. 对于redis服务器宕机:①.
  • 缓存击穿: 就是热点大Key问题,如果这个缓存过期,导致大量的同样的热点请求无法在Redis中处理,而直接去访问数据库,从而导致数据库压力剧增,严重可能会造成数据库宕机或者系统崩溃。
  1. 缓存穿透: 很多的请求在redis中获取不到结果,就需要到mysql中访问,从而会导致数据库压力剧增,可能会导致数据库宕机。