分布式限流算法
限流的维度
- 限制访问连接数
- 限制访问频率
- 设置黑白名单
- 限制传输速率
分布式限流的主流方案
- Guava客户端组件
该组件提供了RareLimiter等相关的限流支持类,该组件只能作用与当前服务器,无法很好的适用于分布式限流场景
- 网关层限流
open gateway等组件
- 中间件限流
redis,MQ等工具
- 其他工具
阿里sentinel等
分布式限流常见算法
令牌桶算法
令牌桶算法是目前使用最为广泛的算法。其中分为两个角色,分别为:
1. 令牌,获取到令牌的请求才会被处理,其他的请求要么排队等候,要么直接被丢弃
2. 桶,用来装令牌的地方,全部请求都从这个桶中获取令牌。