Redisson 布隆过滤器

RedissonClient 配置和之前一样,先使用Redis单机模式,

1、定义一个API接口,

@RestController
public class BloomController {
    @Resource
    private BloomService bloomService;

    @GetMapping("ifExists")
    public String ifExists(String word) {
        bloomService.ifExists(word);
        return "ifExists";
    }
}

2、Service接口:

public interface BloomService {

    public void ifExists(String word);

}

3、Service实现类:

@Slf4j
@Service
public class BloomServiceImpl implements BloomService {
    @Resource
    private RedissonClient redissonClient;

    @Override
    public void ifExists(String word) {
        RBloomFilter<String> bloomFilter = redissonClient.getBloomFilter("wordList");
        bloomFilter.tryInit(100000000L,0.03);
        bloomFilter.add(word);
        boolean result = bloomFilter.contains("Cindy");
        log.info(String.valueOf(result));
        result = bloomFilter.contains(word);
        log.info(String.valueOf(result));
    }
}

4、调用API接口,http://localhost:8080/ifExists?word=Blair

控制台输出:

c.e.r.d.Service.impl.BloomServiceImpl    : false
c.e.r.d.Service.impl.BloomServiceImpl    : true

猜你喜欢

转载自blog.csdn.net/suoyx/article/details/114433607