击穿与穿透:缓存失效的攻防战

我们从字面上去分析这两个场景的含义

"击穿",突出的是"击"这个动作,就是“击打”“攻击”的意思,想象一下就是密集的雨点持续不断的落下来,沉重的铁锤一下一下越来越快,乱劈风吹法,持续不断且是高密度的攻击,这种高频次的攻击最终导致"穿",所以“击穿”对应的场景是高并发,大量的请求过来,在缓存失效的一瞬间,全部涌入数据库。

解决方案:

  1. 持续加固防御:及时修补城墙的每一处破损,让城墙永不倒塌(设置永不过期或提前续期)
  2. 限制通道宽度:即使城墙被击穿,也只容一人通过,达到一夫当关万夫莫开的效果(加锁机制)

"穿透",强调的是"透"的效果,一下就透了,噗呲一下,一针见血,畅通无阻,直达数据库,所以,“穿透”对应的场景就是缓存起不到效果,有缓存和没有都一样,不拦着,碰到拿着圣旨(不存在的数据)的人就放过去,也不判断一下真伪(布隆过滤器)

解决方案:

  1. 以貌取人:兽头人身明显不是人禁止进城(参数校验)
  2. 架设照妖镜:用"照妖镜"确认身份(布隆过滤器验证不存在的数据)
  3. 建立备案制度:只放行已知的"圣旨"(缓存空结果)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

n_rts

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值