隆过滤器原理
当一个元素被加入集合时,通过 K 个 Hash 函数将这个元素映射成一个位阵列(Bit array)中的 K 个点,把它们置为 1。...当实际元素数量超过初始化数量时,应该对布隆过滤器进行重建,重新分配一个 size更大的过滤器,再将所有的历史元素批量add进行
布隆过滤器优缺点
优点:高效插入和查询,内存占用空间少。...解决缓存穿透的问题
缓存穿透是什么 一般情况下,先查询缓存redis是否有该条数据,缓存中没有时,再查询数据库 当数据库也不存在该条数据时,每次查询都要访问数据库,这就是缓存穿透。...缓存透带来的问题是,当有大量请求查询数据库不存在的数据时,就会给数据库带来压力,甚至会拖垮数据库 可以使用布隆过滤器解决缓存穿透的问题 把已存在数据的key存在布隆过滤器中,相当于redis前面挡着一个布隆过滤器...当有新的请求时,先到布隆过滤器中查询是否存在: 如果布隆过滤器中不存在该条数据则直接返回; 如果布隆过滤器中已存在,才去查询缓存redis,如果redis里没查询到则穿透到Mysql数据库
②.