- averageFlying = MovingAverage(flying)
- 在算MovingAverage(flying)的时候,超参beta默认取值为0.9,表示计算前十次的平均flying值
取flying值的时候,有三种做法:
- 请求增加后更新一次averageFlying,见图中橙色曲线
- 请求结束后更新一次averageFlying,见图中绿色曲线
- 请求增加后更新一次averageFlying,请求结束后更新一次averageFlying
我们使用的是第二种,这样可以更好的防止抖动,如图:
![flying策略对比](/i2/go-zero/raw/f90c0aa98e65e426251f981326a9b784d3a3aa82/doc/images/shedding_flying.jpg)
QPS = maxPass * bucketsPerSecond
- maxPass表示每个有效桶里的成功的requests
- bucketsPerSecond表示每秒有多少个桶
1e3表示1000毫秒,minRT单位也是毫秒,QPS*minRT/1e3得到的就是平均每个时间点有多少并发请求