错误使用 在实现限流时,网上的各种文章基本都会提到Guava的RateLimiter,用于实现单机的限流,并给出类似的代码: 可是上面的代码真的能限流吗? 首先,从代码逻辑角度来讲,方法在每次被调用是都new一个RateLimiter,不同请求之间毫无关联,怎么能起到限流的作用呢? 其次,经过本人实 ...
分类:
其他好文 时间:
2018-07-03 20:07:03
阅读次数:
419
1. 引子 ListenableFuture顾名思义就是可以监听的Future,它是对java原生Future的扩展增强。我们知道Future表示一个异步计算任务,当任务完成时可以得到计算结果。如果我们希望一旦计算完成就拿到结果展示给用户或者做另外的计算,就必须使用另一个线程不断的查询计算状态。这样 ...
分类:
其他好文 时间:
2018-06-30 10:50:44
阅读次数:
195
guava的重试机制guava-retrying使用 ...
分类:
其他好文 时间:
2018-06-26 15:04:08
阅读次数:
711
最近开发需求中有需要对后台接口进行限流处理,整理了一下基本使用方法。 首先添加guava依赖: 然后封装RateLimiter适用对多接口的限制: 使用RateLimiterFactory实现对接口的限制: 以上就是RateLimiter实现接口限流的常见使用,头一次发文,mark一下。 ...
分类:
其他好文 时间:
2018-06-26 01:12:43
阅读次数:
600
如何相互转换逗号分隔的字符串和List https://blog.csdn.net/yywusuoweile/article/details/50315377 方法 2: 利用Guava的Joiner [java] view plain copy List<String> list = new Ar ...
分类:
Web程序 时间:
2018-06-21 11:55:07
阅读次数:
283
上一篇中使用的Guava Cache,如果在集群中就不可以用了,需要借助Redis、Zookeeper之类的中间件实现分布式锁。 导入依赖 在pom.xml中需要添加的依赖包:stater-web、starter-aop、starter-data-redis 属性配置 CacheLock注解 Cac ...
分类:
编程语言 时间:
2018-06-15 18:23:12
阅读次数:
817
在guava库中,自带了过滤器(filter)的功能,可以用来对collection 进行过滤,先看例子: 在这个例子中,给出一个list,过滤出含有字母a的元素 此外,可以使用Collections2.filter() 去进行过滤 再来看下predicates判断语言, com.google.co ...
分类:
其他好文 时间:
2018-06-13 17:25:27
阅读次数:
239
# 建议直接使用的第三方类 Common Lang =》StringUtils =》Validate Guava =》Cache =》Ordering JDK7(LTS JDK8 JDK11...) =》Arrays =》Collections ……………………………………………………………………… ...
Lombok简介 Lombok是一款好用顺手的工具,就像Google Guava一样,在此予以强烈推荐,每一个Java工程师都应该使用它。Lombok是一种Java?实用工具,可用来帮助开发人员消除Java的冗长代码,尤其是对于简单的Java对象(POJO)。它通过注释实现这一目的。通过在开发环境中 ...
分类:
其他好文 时间:
2018-06-09 15:57:38
阅读次数:
279
问题背景描述 通过官方提供的 AppiumDriverLocalService 方法,代码启动 appium server 得到以下的报错信息 问题分析定位 引用的第三方依赖包版本冲突,经查找定位为 com.google.guava 版本太低导致,原版本20.0 中没有 SimpleTimeLimi ...
分类:
移动开发 时间:
2018-06-06 21:45:14
阅读次数:
1353