pub struct PlbBalancerConfig {
pub strategy: PlbStrategy,
pub health_threshold: f64,
pub max_in_flight: u32,
pub cooldown_ms: u64,
pub virtual_nodes: u32,
pub ewma_alpha: f64,
}Expand description
Configuration for PeerLoadBalancer.
Fields§
§strategy: PlbStrategyStrategy used for peer selection.
health_threshold: f64Fraction of successes required for a peer to remain healthy (0.0–1.0). e.g. 0.8 means a peer must have ≥ 80 % success rate.
max_in_flight: u32Maximum in-flight requests allowed per peer.
cooldown_ms: u64Duration in milliseconds a peer stays in cooldown after being penalised.
virtual_nodes: u32Number of virtual nodes per peer for consistent-hash ring.
ewma_alpha: f64EWMA smoothing factor α for latency updates (0 < α ≤ 1).
Trait Implementations§
Source§impl Clone for PlbBalancerConfig
impl Clone for PlbBalancerConfig
Source§fn clone(&self) -> PlbBalancerConfig
fn clone(&self) -> PlbBalancerConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 PlbBalancerConfig
impl Debug for PlbBalancerConfig
Auto Trait Implementations§
impl Freeze for PlbBalancerConfig
impl RefUnwindSafe for PlbBalancerConfig
impl Send for PlbBalancerConfig
impl Sync for PlbBalancerConfig
impl Unpin for PlbBalancerConfig
impl UnsafeUnpin for PlbBalancerConfig
impl UnwindSafe for PlbBalancerConfig
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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