如何使用redis快速实现布隆过滤器
面试布隆过滤器可以解决缓存穿透问题publicUsergetUser(LonguserId){Stringkeyuser:userId;// 1. 先查布隆过滤器if(!bloomFilter.mightContain(user_bloom,String.valueOf(userId))){returnnull;// 布隆过滤器说不存在直接返回}// 2. 查缓存Userusercache.get(key);if(user!null){returnuser;}// 3. 查数据库useruserDao.findById(userId);if(user!null){cache.set(key,user);}returnuser;}java中可以使用redission来实现RBloomFilterStringbloomFilterredisson.getBloomFilter(user_bloom);// 初始化预期插入 5000 万误判率 3%bloomFilter.tryInit(50000000L,0.03);bloomFilter.add(user:10086);booleanexistsbloomFilter.contains(user:10086);