本文主要是介绍java 漏桶算法_高并发解决方案限流技术-----漏桶算法限流,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1,漏桶算法
漏桶作为计量工具(The Leaky Bucket Algorithm as a Meter)时,可以用于流量整形(Traffic Shaping)和流量控制(TrafficPolicing),漏桶算法的描述如下:
一个固定容量的漏桶,按照常量固定速率流出水滴;
如果桶是空的,则不需流出水滴;
可以以任意速率流入水滴到漏桶;
如果流入水滴超出了桶的容量,则流入的水滴溢出了(被丢弃),而漏桶容量是不变的。
2,
,
3,桶的容量代表最大并发量,如果桶满了,则请求被丢弃
固定速率流出
随意速率流入,流入代表请求,如果流入速率很快,将桶装满,则溢出的请求被放弃,以达到限流的效果。
4,java 代码 漏桶类
packagecom.aiyuesheng.utils;importjava.util.concurrent.TimeUnit;importjava.util.concurrent.atomic.AtomicInteger;importlombok.Getter;importlombok.Setter;/***
*@authorcaich5 可以把水滴看成请求*/@Setter
@Getterpublic classLeakyBucket {//桶的容量</
这篇关于java 漏桶算法_高并发解决方案限流技术-----漏桶算法限流的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!