简单说说令牌桶(Token Bucket)

421 阅读1分钟

过程图解

image.png

令牌桶算法基本思路

  1. 所有的请求在处理之前都需要拿到一个可用的令牌才会被处理
  2. 根据限流大小,设置按照一定的速率向桶内添加令牌
  3. 桶设置最大的放置令牌限制;当桶满时,新添加的令牌就被丢弃或者被拒绝
  4. 请求到达后首先要获取令牌桶中的令牌,拿着令牌才可以进行其他的业务逻辑,处理完业务逻辑后,将令牌删除
  5. 令牌桶有最低限额,当桶内的令牌达到最低限额的时候,请求处理完之后将不会删除令牌,以此保证足够的限流

算法图解

image.png