作者回复: 它们两个设计上的区别,令牌桶是限制进入的速率,漏桶是限制出的速率。一般来说,如果下游服务没有非常严格的速率限制,选择令牌桶会更好,它在效率和抗抖动之间的横权更好一些
作者回复: 非常好的建议👍 由于课程快更新完了,看看怎么来放出参考答案。
作者回复: 抗抖动主要是依靠桶的缓存能力,稳定的 QPS 控制是用来做流量整形的,精确的控制是依赖更小的时间片和滑动窗口来统计。
作者回复: 固定窗口和滑动窗口相比于令牌桶和漏桶实现要简单并且需要的缓存要少,在一些简单的场景,这就是非常大的优势,选型的原则是合适才好。
作者回复: cpu 和 内存是系统级别的参数,粒度是非常粗的,限流需要做到接口级别,不过 cpu 和内存是非常好的过载指标,在扩容中会使用。
作者回复: Q1:令牌桶的流程速率是不限制的,所以在桶中的令牌满后,突然来大量的请求,由于令牌足够,所以下游的请求量也会短暂突增。 Q2:“某一个服务只有一个实例,即该服务只有一个节点”是对的,单节点限流是种简化的情况,为后面的分布式限流的讨论做准备。