#[non_exhaustive]pub enum RouterStrategy {
Ema,
Thompson,
Cascade,
Bandit,
}Expand description
Routing strategy used by RouterProvider.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Ema
Exponential moving average-based latency-aware ordering.
Thompson
Thompson Sampling with Beta distributions.
Cascade
Cascade: try cheapest provider first, escalate on degenerate output.
Bandit
PILOT: LinUCB contextual bandit with online learning and budget-aware selection.
Trait Implementations§
Source§impl Clone for RouterStrategy
impl Clone for RouterStrategy
Source§fn clone(&self) -> RouterStrategy
fn clone(&self) -> RouterStrategy
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 moreimpl Copy for RouterStrategy
Source§impl Debug for RouterStrategy
impl Debug for RouterStrategy
Source§impl Default for RouterStrategy
impl Default for RouterStrategy
Source§fn default() -> RouterStrategy
fn default() -> RouterStrategy
Returns the “default value” for a type. Read more
impl Eq for RouterStrategy
Source§impl PartialEq for RouterStrategy
impl PartialEq for RouterStrategy
Source§fn eq(&self, other: &RouterStrategy) -> bool
fn eq(&self, other: &RouterStrategy) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for RouterStrategy
Auto Trait Implementations§
impl Freeze for RouterStrategy
impl RefUnwindSafe for RouterStrategy
impl Send for RouterStrategy
impl Sync for RouterStrategy
impl Unpin for RouterStrategy
impl UnsafeUnpin for RouterStrategy
impl UnwindSafe for RouterStrategy
Blanket Implementations§
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.