几种常见的限流算法

作者: kevin0016 | 来源:发表于2018-01-29 19:15 被阅读4590次

1、令牌桶算法
令牌桶算法是比较常见的限流算法之一,大概描述如下:
1)、所有的请求在处理之前都需要拿到一个可用的令牌才会被处理;
2)、根据限流大小,设置按照一定的速率往桶里添加令牌;
3)、桶设置最大的放置令牌限制,当桶满时、新添加的令牌就被丢弃活着拒绝;
4)、请求达到后首先要获取令牌桶中的令牌,拿着令牌才可以进行其他的业务逻辑,处理完业务逻辑之后,将令牌直接删除;
5)、令牌桶有最低限额,当桶中的令牌达到最低限额的时候,请求处理完之后将不会删除令牌,以此保证足够的限流;


image.png

2、漏桶算法
漏桶算法其实很简单,可以粗略的认为就是注水漏水过程,往桶中以一定速率流出水,以任意速率流入水,当水超过桶流量则丢弃,因为桶容量是不变的,保证了整体的速率


image.png

上述业务逻辑参考张开涛的《亿级流量网站架构核心技术》一书中,在此推荐这本书

相关文章

  • 来谈谈限流-RateLimiter源码分析

    前一篇文章提到了限流的几种常见算法,本文将分析guava限流类RateLimiter的实现。 RateLimite...

  • 几种常见的限流算法

    1、令牌桶算法令牌桶算法是比较常见的限流算法之一,大概描述如下:1)、所有的请求在处理之前都需要拿到一个可用的令牌...

  • 限流框架系列之常见限流算法

    四种常见的限流算法 固定时间窗口限流算法 滑动时间窗口限流算法 令牌桶限流算法 漏桶限流算法 算法比较 算法确定参...

  • 大型网站限流算法的实现和改造

    最近写了一个限流的插件,所以避免不了的接触到了一些限流算法。本篇文章就来分析一下这几种常见的限流算法 分析之前 依...

  • 限流器的几种实现方案

    整理常见的几种限流算法 令牌桶算法令牌桶算法的思路是,如果希望限制的QPS是1000。那么,就设置一个容量是100...

  • 图解+代码|常见限流算法以及限流在单机分布式场景下的思考

    大家好,我是 yes。 今天来说说限流的相关内容,包括常见的限流算法、单机限流场景、分布式限流场景以及一些常见限流...

  • 分布式架构

    大流量限流/削峰 常见的限流算法 计数器算法池化资源技术的限流就是通过计数器算法来控制全局的总并发数。 令牌桶算法...

  • 三种常见的限流算法

    参考1 三种常见的限流算法

  • 叮当快药

    一轮 限流有哪几种底层算法 常用4种限流算法介绍及比较[https://blog.csdn.net/weixin_...

  • 几种限流算法

    安全稳定的Open API必须有限频措施,防止接口被某个用户非预期超量调用,影响正常用户使用 常用的限流算法有直接...

网友评论

    本文标题:几种常见的限流算法

    本文链接:https://www.haomeiwen.com/subject/vjrfzxtx.html