问答

令牌桶算法和漏斗算法的区别究竟是什么?

作者:admin 2021-08-16 我要评论

在网上随便找一篇博客去了解令牌桶和漏斗的区别,基本都会说漏斗是匀速的,而令牌桶可以有效处理请求突增的情况,但是我看漏斗的原理里面也有水桶的概念呀,比如...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

在网上随便找一篇博客去了解令牌桶和漏斗的区别,基本都会说漏斗是匀速的,而令牌桶可以有效处理请求突增的情况,但是我看漏斗的原理里面也有水桶的概念呀,比如说水桶的大小是10,而rate是每秒2,那么在一瞬间我完全可以把水桶占满呀,后续会受到rate的限制,这不也是能够处理突增的情况吗?还是说我理解的不对。。还是说漏斗里面没有水桶,所谓的水桶就是排队,真正能单位时间处理的请求就是rate,类似于线程池一样的东西?

###

漏斗的特点是匀速,有突发请求时,即使性能允许也按固定的速率处理。

比如说水桶的大小是10,而rate是每秒2,那么在一瞬间我完全可以把水桶占满呀,后续会受到rate的限制

漏斗的 rate 限制了最大的处理速度(每秒2个),而漏斗的大小限制能排队的请求数量(最多10个请求在排队)。

同样的配置,对令牌桶来说,是桶的大小限制了最大的处理速度,而 rate 限制的是满负载时的处理速度。 如果某个时刻有 10 个令牌(前5秒都没请求),然后同时到达 10 个请求,是允许同时处理这 10 个请求的。

所以说,漏斗适合请求到达频率稳定、需要严格控制处理速率的场景,而令牌桶适合允许突发请求的情况。

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 令牌桶算法和漏斗算法的区别究竟是什么

    令牌桶算法和漏斗算法的区别究竟是什么

  • element el-col布局bug

    element el-col布局bug

  • Failed to execute child process “-S

    Failed to execute child process “-S

  • koa执行不到ctx.body 却可以执行ctx.th

    koa执行不到ctx.body 却可以执行ctx.th

腾讯云代理商
海外云服务器