承德市建设局网站,公司用员工信息做网站域名备案,最新网络游戏排行榜2021,杭州电商网站建设公司布隆过滤器#xff08;Bloom Filter#xff09; 布隆过滤器一般用于解决缓存穿透的问题。主要原理是使用一组哈希函数#xff0c;将元素映射成一组位数组中的索引位置。如果要检查某个元素是否在集合中时#xff0c;将此元素通过所有的哈希函数#xff0c;查看哈希值对应的…布隆过滤器Bloom Filter 布隆过滤器一般用于解决缓存穿透的问题。主要原理是使用一组哈希函数将元素映射成一组位数组中的索引位置。如果要检查某个元素是否在集合中时将此元素通过所有的哈希函数查看哈希值对应的位数组的值是否为1。如果对应的位数组的值都为1这个元素可能在集合中否则此元素一定不在集合中。简而言之就是存在的元素可能存在不存在的元素一定不存在。Redisson也提供了布隆过滤器的使用。
RBloomFilterUser bloomFilter redisson.getBloomFilter(xiaohei);
// 初始化布隆过滤器预计统计元素数量为1000000期望误差率为0.03
//精度越高消耗空间越大
bloomFilter.tryInit(100000, 0.01);
bloomFilter.add(new User(xiaobai));
bloomFilter.contains(new User(xiaobai)));有序集SortedSet 在保证元素唯一性的前提下通过比较器Comparator接口实现了对元素的排序。
RSortedSetInteger set redission.getSortedSet(xiaohei);
set.add(3);
set.add(1);
set.add(2);
set.remove(1);AtomicLong 与java中的原子类相似可以理解为让long保持原子性
RAtomicLong r1 redisson.getAtomicLong(user1);
atomicLong.set(3);
atomicLong.incrementAndGet();//自增一
atomicLong.get();AtomicDouble
RAtomicDouble r2 redisson.getAtomicDouble(user2);
r2.set(2.81);
r2.addAndGet(4.11);//与4.11相加
r2.get();