美文网首页
缓存穿透、击穿、雪崩

缓存穿透、击穿、雪崩

作者: 九灬日 | 来源:发表于2020-07-13 19:38 被阅读0次

1、缓存穿透

    用户用不存在的key发起请求,如id=-1,或者过大的id,会不断访问db,量大时会导致数据库挂掉。

解决方法:

(1)、增加key值校验。

(2)、缓存设置,即使数据库中不存在的值也在写入到缓存中,如(-1,null)等,可以设置有效时间短些,防止单id反复攻击。

2、缓存击穿

    缓存中存在的key,在失效的时候,大量对此数据的请求去访问数据库,导致数据库的压力瞬间提升。

解决方法:

(1)、设置热点数据永不过期

(2)、加互斥锁

3、缓存雪崩

    相对于击穿,大量的key同时失效,导致大量请求同时访问db,引起db压力骤增,导致雪崩。

解决方法:

(1)、热点数据永不过期

(2)、可以失效时间分布设置,防止同一时间大量key同时失效。

相关文章

网友评论

      本文标题:缓存穿透、击穿、雪崩

      本文链接:https://www.haomeiwen.com/subject/wwszcktx.html