redis用布隆过滤器解决缓存穿透

版权声明:嘿嘿嘿 https://blog.csdn.net/luzhensmart/article/details/88045882

缓存穿透是指用户查询数据,在数据库没有,自然在缓存中也不会有。这样就导致用户查询的时候,在缓存中找不到,每次都要去数据库再查询一遍,然后返回空(相当于进行了两次无用的查询)。这样请求就绕过缓存直接查数据库,这也是经常提的缓存命中率问题。

有很多种方法可以有效地解决缓存穿透问题,最常见的则是采用布隆过滤器(见博客《详解布隆过滤器的原理、使用场景和注意事项》),将所有可能存在的数据哈希到一个足够大的bitmap中,一个一定不存在的数据会被这个bitmap拦截掉,从而避免了对底层存储系统的查询压力。

猜你喜欢

转载自blog.csdn.net/luzhensmart/article/details/88045882