05 2021 档案
摘要:原理 漏桶算法水先进入到漏桶里,漏桶以一定的速度出水,当流入速度大于漏出的速度,桶中的水会越来越多直到慢,再来请求会溢出。算法思想是:1.水(请求)从上方倒入水桶,从水桶下方流出(被处理);2.来不及流出的水存在水桶中(缓冲),以固定速率流出;3.水桶满后水溢出(丢弃)。4.这个算法的核心是:缓存请
阅读全文
摘要:简介 Guava cache是一个支持高并发的线程安全的本地缓存。多线程情况下也可以安全的访问或者更新cache。Guava Cache与ConcurrentMap很相似,但也不完全一样。最基本的区别是ConcurrentMap会一直保存所有添加的元素,直到显式地移除。相对地,Guava Cache
阅读全文
摘要:// 创建Map其中newHashMapWithExpectedSize更具有实际意义 Map<Integer, Integer> map1= Maps.newHashMap(); Map<Integer, Integer> map2 = Maps.newHashMapWithExpectedSiz
阅读全文
摘要:单列集合的工具类 // Lists // 创建集合 List<String> list1 = Lists.newArrayList(); List<String> list2 = Lists.newArrayListWithCapacity(8); List<String> list3 = List
阅读全文
摘要:双列集合的方法被标注了@Beat表示不稳定 使用方法 1.通过on方法设置分割符号 2.使用omitEmptyStrings方法可以去掉空元素 3.使用trimResults方法删除元素前后空白字符 4.使用split/splitToList/splitToStream指定将字符串切分成迭代器/集合
阅读全文
摘要:单列集合的拼接 List<String> colors = Lists.newArrayList("red", "blue", null, "purple", "yellow", "pink", null); try { // 不过滤null,如果有null那么会抛NPE String colorS
阅读全文
摘要:使用步骤 1.定义匹配字符的匹配器2.处理匹配的字符序列 创建 CharMacher // 匹配所有的 CharMatcher charMatcher1 = CharMatcher.any(); CharMatcher charMatcher2 = CharMatcher.anyOf("aef");
阅读全文
摘要:比较器例子 import com.google.common.collect.ComparisonChain; import com.google.common.collect.Ordering; import java.util.Arrays; import java.util.Comparato
阅读全文
摘要:JDK1.8之前Objects还是挺方便的,但是1.8之后JDK自带的Objects功能更加完善 import com.google.common.base.MoreObjects; import lombok.Data; import java.util.Objects; @Data public
阅读全文
摘要:Guava是Google公司内部Java开发工具库的开源版本。它提供了一些JDK没有提供的功能,以及对JDK已有功能的增强功能。其中就包括:集合(Collections)、缓存(Caching)、原生类型支持(Primitives Support)、并发库(Concurrency Libraries
阅读全文

浙公网安备 33010602011771号