redis随笔_2021-1-8

2021-01-08  本文已影响0人  吴哥窟spring

一、雪崩、穿透、击穿

1.雪崩:热点数据同时过期,所有请求直接全部打到db上,db直接挂掉(从机替代、重启后依然崩)。

    1>.数据不过期,保证更新数据时同步更新缓存。

    2>.定时刷新缓存不要设置相同过期时间(固定时间+随机/随机)。

    3>.cluster热点数据分片(也存在问题,可能热点数据在一个分片上)。

2.穿透:用不存在的数据去请求,所有请求还是都打到db。(一般认为是非法请求)

    1>.业务校验

    2>.缓存null(看具体业务)

    3>.网关层安全策略(nginx配置)

3.击穿:单个非常热点key突然过期,造成请求直接全部打到db上

    1>.永不过期

    2>.加锁解决getData方法

总结:

    1>.本质类似都是请求到db,db撑不住导致服务挂掉

    2>.可以引入cluster、服务降级限流、多级缓存宏观优化

    

上一篇 下一篇

猜你喜欢

热点阅读