布隆过滤器(BloomFilter)是由只存0或1的位数组和多个hash算法, 进行判断数据一定不存在或者可能存在的算法...., 但相比于Map/Set等方式判断元素是否存在, 布隆过滤器更加节省空间, 这在数据量非常大的情况下是非常有优势的....应用场景
利用布隆过滤器减少磁盘 IO 或者网络请求, 一个值必定不存在的话, 可以不用进行后续逻辑处理, 即使是误判的情况下, 继续后续逻辑, 也会大大降低系统压力.
1....缓存穿透
当key对应的数据在数据源并不存在, 每次针对此key的请求从缓存获取不到, 请求都会到数据源, 从而可能压垮数据源. 这时就可以使用布隆过滤器, 避免缓存穿透.
2....黑名单
不在黑名单中数据, 会被布隆过滤器过滤出来, 可能存在的数据在去数据源中查询, 降低数据源压力.