def throttle(elements: Int, per: FiniteDuration, maximumBurst: Int, mode: ThrottleMode): Repr[Out]
maximumBurst
是否意味着可以同时处理的元素数量? 最佳答案
从scaladoc:
节流阀实现令牌桶模型。有一个水桶
给定的令牌容量(突发大小或maximumBurst)。代币掉进
以给定的速率存储桶,可以“保留”以备后用
桶容量允许一些突发性。每当流想要
发送一个元素,它从存储桶中获取的令牌数量与
元素。如果没有,油门会一直等到铲斗
积累足够的令牌。仅在流中时桶已满
实现并开始。maximumBurst
是上述模型中的令牌桶大小。
假设我们开始了节流,那么汇就开始了苛刻的元素。在反压(使用整形模式)或失败(使用强制模式)之前,油门级将发射它们的maximumBurst
。
因此,我想说的是可以不节流地处理的最大元素数。 “同时”处理永远不会是流中的确切定义:)