pub enum BackoffConfig {
Constant {
delay: Duration,
max_retries: usize,
jitter_enabled: bool,
jitter_seed: Option<u64>,
},
Exponential {
initial_delay: Duration,
factor: f32,
max_delay: Duration,
max_retries: usize,
max_total_delay: Duration,
jitter_enabled: bool,
jitter_seed: Option<u64>,
},
Fibonacci {
initial_delay: Duration,
max_delay: Duration,
max_retries: usize,
jitter_enabled: bool,
jitter_seed: Option<u64>,
},
NoBackoff,
}Expand description
Configuration for Backoff.
Variants§
Constant
Configuration for Backoff::Constant.
Fields
delay: DurationBackoff delay.
Defaults to 500 millis - see defaults::delay.
max_retries: usizeMaximum amount of retries.
Defaults to 4 - see defaults::max_retries.
jitter_enabled: boolWhether jitter is enabled.
Defaults to true - see defaults::jitter_enabled.
jitter_seed: Option<u64>Random seed to initialize the random jitter generator.
Defaults to None - see defaults::jitter_seed.
Exponential
Configuration for Backoff::Exponential.
Fields
initial_delay: DurationInitial backoff delay.
Defaults to 500 millis - see defaults::delay.
factor: f32Backoff factor.
Defaults to 2.0 - see defaults::factor.
max_delay: DurationMaximum backoff delay.
Defaults to 60 seconds - see defaults::max_delay.
max_retries: usizeMaximum amount of retries.
Defaults to 4 - see defaults::max_retries.
max_total_delay: DurationMaximum total backoff delay.
Defaults to None - see defaults::max_total_delay
jitter_enabled: boolWhether jitter is enabled.
Defaults to true - see defaults::jitter_enabled.
jitter_seed: Option<u64>Random seed to initialize the random jitter generator.
Defaults to None - see defaults::jitter_seed.
Fibonacci
Configuration for Backoff::Fibonacci.
Fields
initial_delay: DurationInitial backoff delay.
Defaults to 500 millis - see defaults::delay.
max_delay: DurationMaximum backoff delay.
Defaults to 60 seconds - see defaults::max_delay.
max_retries: usizeMaximum amount of retries.
Defaults to 4 - see defaults::max_retries.
jitter_enabled: boolWhether jitter is enabled.
Defaults to true - see defaults::jitter_enabled.
jitter_seed: Option<u64>Random seed to initialize the random jitter generator.
Defaults to None - see defaults::jitter_seed.
NoBackoff
Configuration for Backoff::NoBackoff.
Trait Implementations§
Source§impl BackoffBuilder for BackoffConfig
impl BackoffBuilder for BackoffConfig
Source§impl Clone for BackoffConfig
impl Clone for BackoffConfig
Source§fn clone(&self) -> BackoffConfig
fn clone(&self) -> BackoffConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more