Trait tower::load::Load

source ·
pub trait Load {
    type Metric: PartialOrd;

    // Required method
    fn load(&self) -> Self::Metric;
}
Expand description

Types that implement this trait can give an estimate of how loaded they are.

See the module documentation for more details.

Required Associated Types§

source

type Metric: PartialOrd

A comparable load metric.

Lesser values indicate that the service is less loaded, and should be preferred for new requests over another service with a higher value.

Required Methods§

source

fn load(&self) -> Self::Metric

Estimate the service’s current load.

Implementors§

source§

impl<S> Load for ConcurrencyLimit<S>
where S: Load,

§

type Metric = <S as Load>::Metric

source§

impl<S> Load for RateLimit<S>
where S: Load,

§

type Metric = <S as Load>::Metric

source§

impl<S, C> Load for PeakEwma<S, C>

§

type Metric = Cost

source§

impl<S, C> Load for PendingRequests<S, C>

source§

impl<T, M: Copy + PartialOrd> Load for Constant<T, M>

§

type Metric = M