Expand description
§Backpressure Controller
Adaptive backpressure control for streaming pipelines. Supports multiple strategies: Drop, Block, Throttle (token-bucket), and SpillToDisk.
§Strategies
- Drop: Discard incoming items when the queue is above the high watermark.
- Block: Signal the caller to block (returns
ThrottleDelay(u64::MAX)). - Throttle: Token-bucket rate limiter — items accepted only when a token is available; delay returned otherwise.
- SpillToDisk: Like Drop but caller is expected to write to
path; this module records the event for stats purposes only (I/O is caller’s concern).
Structs§
- Backpressure
Config - Configuration for a
BackpressureController. - Backpressure
Controller - Adaptive backpressure controller implementing multiple mitigation strategies.
- Backpressure
Stats - Cumulative statistics tracked by a
BackpressureController.
Enums§
- Backpressure
Decision - Decision returned by
BackpressureController::try_accept. - Backpressure
Strategy - How the controller responds when the queue exceeds the high-watermark.