简述缓存击穿 / 缓存雪崩 / 缓存穿透 以及各自的解决方案

缓存击穿:
    大量用户访问同一数据,且数据存在于数据库
    解决方案:1,设置热点数据永不过期;2,加锁

缓存雪崩:
    大量数据在同一时间过期,导致数据库瞬间压力增加,数据存在于数据库
    解决方案:在设置缓存过期时间的时候,加上随机数,这样可以很好的避免数据在同一时间过期

缓存穿透:
    这是属于恶性攻击行为,多指的是程序恶意频繁查询一些不存在的数据,如id < 0
    解决方案:1,添加校验,过滤一些恶意访问的数据;2,对无法查到的数据,依然存入缓存,但需要设置较短的过期时间


原文地址:https://www.cnblogs.com/lovecatcher/p/14514326.html