如何区分缓存雪崩与穿透,并有效预防这两种情况?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1415个文字,预计阅读时间需要6分钟。
听说10个人去互联网公司面试,有9个人会被问到关于缓存雪崩和缓存穿透的问题。据悉,这9个人中,至少有8个人回答得不完整。而这8个人,都只是在网上找的各类面试资料去应对的。
普通人:听说10个人去互联网公司面试,有9个人会被问到缓存雪崩和缓存穿透的问题。
听说,这9个人里面,至少有8个人回答得不完整。
而这8个人里面,全都是在网上找的各种面试资料去应付的,并没有真正理解。
当然,也很正常,只有大规模应用缓存的架构才会重点关注这两个问题。
那么如何真正理解这两个问题的底层逻辑,我们来看普通人和高手的回答。
嗯.................
高手:缓存雪崩,就是存储在缓存里面的大量数据,在同一个时刻全部过期,
原本缓存组件抗住的大部分流量全部请求到了数据库。
导致数据库压力增加造成数据库服务器崩溃的现象。
导致缓存雪崩的主要原因,我认为有两个:
- 缓存中间件宕机,当然可以对缓存中间件做高可用集群来避免。
- 缓存中大部分key都设置了相同的过期时间,导致同一时刻这些key都过期了。对于这样的情况,可以在失效时间上增加一个1到5分钟的随机值。
本文共计1415个文字,预计阅读时间需要6分钟。
听说10个人去互联网公司面试,有9个人会被问到关于缓存雪崩和缓存穿透的问题。据悉,这9个人中,至少有8个人回答得不完整。而这8个人,都只是在网上找的各类面试资料去应对的。
普通人:听说10个人去互联网公司面试,有9个人会被问到缓存雪崩和缓存穿透的问题。
听说,这9个人里面,至少有8个人回答得不完整。
而这8个人里面,全都是在网上找的各种面试资料去应付的,并没有真正理解。
当然,也很正常,只有大规模应用缓存的架构才会重点关注这两个问题。
那么如何真正理解这两个问题的底层逻辑,我们来看普通人和高手的回答。
嗯.................
高手:缓存雪崩,就是存储在缓存里面的大量数据,在同一个时刻全部过期,
原本缓存组件抗住的大部分流量全部请求到了数据库。
导致数据库压力增加造成数据库服务器崩溃的现象。
导致缓存雪崩的主要原因,我认为有两个:
- 缓存中间件宕机,当然可以对缓存中间件做高可用集群来避免。
- 缓存中大部分key都设置了相同的过期时间,导致同一时刻这些key都过期了。对于这样的情况,可以在失效时间上增加一个1到5分钟的随机值。

