随笔分类 -  高并发专辑

摘要:1.漏桶限流算法的原理 以固定速率从桶中流出水滴,以任意速率往桶中放入水滴,桶容量大小是不会发生改变的。 流入:以任意速率往桶中放入水滴。 流出:以固定速率从桶中流出水滴。 水滴:是唯一不重复的标识。 因为桶中的容量是固定的,如果流入水滴的速率>流出的水滴速率,桶中的水滴可能会溢出。那么溢出的水滴请 阅读全文
posted @ 2022-02-16 16:01 coding++ 阅读(91) 评论(0) 推荐(0) 编辑
摘要:1.它是限流算法中最简单最容易的一种算法 计数器实现限流 每分钟只允许10个请求 第一个请求进去的时间为startTime,在startTime + 60s内只允许10个请求 当60s内超过十个请求后,拒绝,不超过,到第60s 重新设置时间 package com.aiyuesheng.utils; 阅读全文
posted @ 2019-11-18 11:52 coding++ 阅读(174) 评论(0) 推荐(0) 编辑
摘要:1、漏桶算法 漏桶作为计量工具(The Leaky Bucket Algorithm as a Meter)时,可以用于流量整形(Traffic Shaping)和流量控制(TrafficPolicing),漏桶算法的描述如下: 一个固定容量的漏桶,按照常量固定速率流出水滴; 如果桶是空的,则不需流 阅读全文
posted @ 2019-11-16 20:42 coding++ 阅读(347) 评论(0) 推荐(0) 编辑
摘要:RateLimiter是guava提供的基于令牌桶算法的实现类,可以非常简单的完成限流特技,并且根据系统的实际情况来调整生成token的速率。 通常可应用于抢购限流防止冲垮系统;限制某接口、服务单位时间内的访问量,譬如一些第三方服务会对用户访问量进行限制;限制网速,单位时间内只允许上传下载多少字节等 阅读全文
posted @ 2019-11-16 18:21 coding++ 阅读(415) 评论(0) 推荐(0) 编辑
摘要:java中对于生产者消费者模型,或者小米手机营销 1分钟卖多少台手机等都存在限流的思想在里面。 关于限流 目前存在两大类,从线程个数(jdk1.5 Semaphore)和RateLimiter速率(guava) Semaphore:从线程个数限流 RateLimiter:从速率限流 目前常见的算法是 阅读全文
posted @ 2019-11-16 18:03 coding++ 阅读(623) 评论(0) 推荐(0) 编辑
摘要:RateLimiter是Guava的concurrent包下的一个用于限制访问频率的类 <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>18.0</version> </ 阅读全文
posted @ 2019-11-16 17:49 coding++ 阅读(849) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示