您当前的位置: 首页 >  缓存

wu@55555

暂无认证

  • 1浏览

    0关注

    201博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

缓存穿透、缓存击穿、缓存雪崩如何解决

wu@55555 发布时间:2021-06-30 00:02:41 ,浏览量:1

首先要理解这3个问题的概念,比较容易记混的是穿透和击穿,个人认为这是个名字而已,更重要的是概念。当然分享一下个人记忆的一个小技巧:透,透明,表示本来就没有的东西,所以缓存穿透指数据库本来就没有这些key,但是又有大量请求打来导致直接访问到数据库上了。

缓存穿透:本来就没有的key

因为数据库中本来就没有这些key,但又有大量的这些key请求访问过来,导致穿过了redis打到数据库上了

解决: 布隆过滤器(过滤器还有其他几种,之间的差异可以自行了解)

缓存击穿:少量key被大量请求

某些key过期或者被清除掉后,针对这些key的大量请求打来过来,直接穿透了redis到数据库上了

解决:第一次访问后发现没有缓存,就访问数据库并设置缓存,这样下一次访问的时候就能访问缓存了

缓存雪崩:大量key被大量请求

大量的key同时过期或被清理,间接造成大量的访问到达数据库

解决:key设置过期时间随机,尽量错开过期时间

如果某些业务要求0点清除: 1、可以设置延迟随机时间执行 2、缓存击穿方案做备案

【后续补充这些方案的具体实现,包括布隆过滤器的部署使用】

关注
打赏
1664985904
查看更多评论
立即登录/注册

微信扫码登录

0.1046s