流控比较

本文深入探讨了四种流量控制算法:固定窗口、滑动窗口、漏桶算法和令牌桶算法。固定窗口适合简单场景,滑动窗口提供更精确的控制,漏桶用于平滑流量,而令牌桶则允许一定程度的突发流量。每种算法的时间和空间复杂度、适用场景及优缺点都有所不同,选择时需根据实际需求平衡精度、平滑度和资源消耗。
摘要由CSDN通过智能技术生成
算法原理时间复杂度空间复杂度问题适用场景
固定窗口固定时间窗口计数O(1)O(1)临界突变容易实现,适用于一些简单的流控场景,流量比较均匀,或者允许临界突变
滑动窗口窗口拆分,子窗口独立统计,按窗口时间滑动,统一限流。O(1)O(M) - M为子窗口数精度&平滑度适用大多数场景,可以通过调节采样子窗口数来平衡开销
漏桶算法基于(出口)流速来做流控O(1)O(1)突发流量被整形 要求输出速率恒定的场景,能够平滑流量
令牌桶算法基于(入口)流速来做流控O(1)O(1)允许一定程度突发流量 与漏桶类似,区别在于允许一定的突发流量
滑动日志基于请求日志做流控O(log(N))O(N)-最大日志数精度高,时间&空间复杂度高要求完全精确的控制,保证任意T时刻内流量不超过N,高时间和空间复杂度,性能最差
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值