rule对应的实现类:FlowRuleUtil类如下方法:
private static TrafficShapingController generateRater(/@Valid/ FlowRule rule)
滑动时间窗口(ControlBehavior对应CONTROL_BEHAVIOR_DEFAULT)源码:
https://blog.csdn.net/li1669852599/article/details/108084761
https://www.jianshu.com/p/2f96a526d17f
窗口的滑动在:LeapArray 类 WindowWrap currentWindow(long timeMillis) 方法中
CONTROL_BEHAVIOR_RATE_LIMITER : 漏桶算法
CONTROL_BEHAVIOR_WARM_UP : 令牌桶算法
CONTROL_BEHAVIOR_DEFAULT :滑动时间窗口算法
CONTROL_BEHAVIOR_WARM_UP
- 在WarmUpController 类中,warningQps 取值范围(count/3, count),所以在warmUpPeriodInSec期间能起到QPS预热作用,不会使QPS瞬间达到count // coldFactor = 3的条件下算出来的