缓存穿透和缓存雪崩有点类似,但是它有一个更重要的原因是恶意攻击所带来的。
产生的原因也是缓存命中率很低,使得请求被转到数据库当中,从而导致性能问题。
解决方案是:
一、那么针对恶意攻击的话,我们可以做ip访问限制。
二、对一些空值进行缓存。
三、对key设置一些规则,既对key进行管束,如果key不符合一定的规则,就直接返回。因为我们自己操作的key肯定是符合规则的,那么不符合负责的key呢?反正不是我们自己的,那就不处理呗!!!不是一家人别进我家门
重中之重的是使用布隆过滤器
布隆过滤器的核心是一种压缩算法。
布隆过滤器所处的位置是在业务服务器和缓存数据库之间。其作用是过滤请求,提高访问缓存数据库的准确性,不至于所有的请求都会到缓存数据库上,布隆过滤器是应对恶意请求行之有效的方式。
redis应用之缓存穿透
最新推荐文章于 2024-10-13 21:59:54 发布