pub struct BackpressureConfig {
pub exclusive_credits: usize,
pub floating_credits: usize,
pub overflow_strategy: OverflowStrategy,
pub high_watermark: f64,
pub low_watermark: f64,
}Expand description
Configuration for backpressure handling.
Fields§
§exclusive_credits: usizeInitial exclusive credits per sender (like Flink’s buffers-per-channel). These credits are always reserved for a specific sender.
floating_credits: usizeFloating credits shared across all senders (like Flink’s floating-buffers-per-gate). Allocated dynamically based on backlog priority.
overflow_strategy: OverflowStrategyStrategy when credits are exhausted.
high_watermark: f64High watermark - when queue reaches this %, start throttling. Value between 0.0 and 1.0.
low_watermark: f64Low watermark - when queue drops below this %, resume normal flow. Value between 0.0 and 1.0.
Implementations§
Source§impl BackpressureConfig
impl BackpressureConfig
Sourcepub fn builder() -> BackpressureConfigBuilder
pub fn builder() -> BackpressureConfigBuilder
Creates a new configuration builder.
Sourcepub fn total_credits(&self) -> usize
pub fn total_credits(&self) -> usize
Total credits available (exclusive + floating).
Trait Implementations§
Source§impl Clone for BackpressureConfig
impl Clone for BackpressureConfig
Source§fn clone(&self) -> BackpressureConfig
fn clone(&self) -> BackpressureConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for BackpressureConfig
impl Debug for BackpressureConfig
Auto Trait Implementations§
impl Freeze for BackpressureConfig
impl RefUnwindSafe for BackpressureConfig
impl Send for BackpressureConfig
impl Sync for BackpressureConfig
impl Unpin for BackpressureConfig
impl UnsafeUnpin for BackpressureConfig
impl UnwindSafe for BackpressureConfig
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.