微服务支持平台--限流
限流算法
限流算法:
算法 | 含义 | 备注 |
---|---|---|
令牌桶 | 以恒定速度往一个桶内增加令牌,当桶内令牌满了后,就停止增加令牌 | 适用于流量比较平稳的情况,只能承受小的突发流量 |
滑动窗口 | 将时间周期分为N个小周期,分别记录每个小周期内访问次数,并且根据时间滑动删除过期的小周期。在一个完整的时间周期内,访问数量超过阈值则被限流 | Sentinel就是采用滑动窗口 |
计数器 | 在指定时间周期内累加访问次数,当访问次数达到设定的阈值时,触发限流策略 | 存在临界问题 |
漏桶限流 | 请求到达时直接放入漏桶,漏桶容量达到阈值,触发限流策略。漏桶以固定的速率释放请求(即请求通过),直到漏桶为空。 | 可以平滑网络上的突发流量,消息中间件就采用的漏桶限流的思想 |