【redis】缓存预热雪崩穿透击穿(上)
文章目录
【redis】缓存预热雪崩穿透击穿(上)前言一、面试题二、缓存预热三、缓存雪崩发生原因预防+解决高可用:多缓存结合: 人民币玩家 四、缓存穿透是什么? 恶意攻击、查询不存在的key解决:方案一:空对象缓存或者缺省值缺点:`只能作为短期的、救急的方案` 方案二:Google布隆过滤器Guava案例:白名单过滤器布隆过滤器说明: 五、缓存击穿是什么?危害解决案例未优化代码,存在被缓存击穿的风险1、service,在整个启动时自动启动定时器2、controller,返回聚划算查询分页数据的接口 风险与解决思路`差异失效时间` 六、总结前言
一、面试题
二、缓存预热
加注解
三、缓存雪崩
发生原因
预防+解决
高可用:
多缓存结合:
人民币玩家
四、缓存穿透
是什么? 恶意攻击、查询不存在的key
解决:
方案一:空对象缓存或者缺省值
缺点:只能作为短期的、救急的方案
方案二:Google布隆过滤器Guava
案例:白名单过滤器
源码
布隆过滤器说明:
五、缓存击穿
是什么?
危害
解决
案例
模仿聚划算的业务案例
未优化代码,存在被缓存击穿的风险
1、service,在整个启动时自动启动定时器
2、controller,返回聚划算查询分页数据的接口
风险与解决思路
风险1:service
风险2:controller
差异失效时间
改进后的service和controller