如何使用Redisson的布隆过滤器?

admin2024-10-03  7

封装布隆过滤器

/**
 * 创建布隆过滤器
 *
 * @param filterName - 过滤器名称
 * @param expectedInsertions - 预测插入数量
 * @param falsePositiveRate - 误判率
 * @author 付聪
 * @time 2024-09-20 17:24:10
 */
<T> RBloomFilter<T> createBloomFilter(String filterName, Long expectedInsertions, Double falsePositiveRate);
@Override
public <T> RBloomFilter<T> createBloomFilter(String filterName, Long expectedInsertions, Double falsePositiveRate) {
    RBloomFilter<T> bloomFilter = redissonClient.getBloomFilter(filterName);
    bloomFilter.tryInit(expectedInsertions, falsePositiveRate);
    return bloomFilter;
}

使用示例

@Resource
private RedissonService redissonService;

public void someMethod() {
    RBloomFilter<String> bloomFilter = redissonService.create("myBloomFilter", 10000, 0.03);
    bloomFilter.add("test");
    boolean result = bloomFilter.contains("test");
    System.out.println("Does 'test' exist? " + result);
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明原文出处。如若内容造成侵权/违法违规/事实不符,请联系SD编程学习网:675289112@qq.com进行投诉反馈,一经查实,立即删除!