![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
RateLimiter
限流
yaoshengting
这个作者很懒,什么都没留下…
展开
-
使用Guava平滑限流某个接口的请求数
Guava RateLimiter提供的令牌桶算法可用于平滑突发限流(SmoothBursty)和平滑预热限流(SmoothWarmingUp)实现。SmoothBursty RateLimiter limiter = RateLimiter.create(5); // limiter.acquire()返回值是睡眠时间(以强制执行速率,单位是秒) System.out.println(limiter.acquire()); System.out.println(limi原创 2020-06-27 08:30:36 · 627 阅读 · 0 评论 -
常见限流算法
常见的限流算法有:令牌桶、漏桶、计数器。令牌桶令牌桶算法:一个存放固定容量令牌的桶(假设容量是n), 按照固定速率往桶里添加令牌(假设限速为10r/s,则按照100毫秒的固定速率往桶中添加令牌,当桶满时,新添加的令牌会被丢弃), 请求过滤之后,需要先从桶里获取一个令牌,如果获取到令牌,则进行业务处理;如果获取不到则拒绝服务。漏桶一个固定容量的漏桶,按照固定速率流出水滴,如果桶是空的,则不需要流出水滴 以任意速率流入水滴到漏桶,如果流入水滴超出了桶的容量,则流入的水滴溢出(被丢弃)原创 2020-06-26 10:55:38 · 336 阅读 · 0 评论