pub struct WeightedRoundRobinLb { /* private fields */ }Expand description
Smooth weighted round-robin as described in the nginx implementation.
Each backend has:
effective_weight(starts equal to the configured weight; can be reduced on transient errors and recovered later).current_weight(accumulates each round; the backend with the highest current_weight is selected, then has total_weight subtracted).
Implementations§
Trait Implementations§
Source§impl LoadBalancer for WeightedRoundRobinLb
impl LoadBalancer for WeightedRoundRobinLb
Auto Trait Implementations§
impl !Freeze for WeightedRoundRobinLb
impl RefUnwindSafe for WeightedRoundRobinLb
impl Send for WeightedRoundRobinLb
impl Sync for WeightedRoundRobinLb
impl Unpin for WeightedRoundRobinLb
impl UnsafeUnpin for WeightedRoundRobinLb
impl UnwindSafe for WeightedRoundRobinLb
Blanket Implementations§
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