pub struct CircuitBreakerConfig {
pub failure_threshold: u32,
pub recovery_timeout: Duration,
pub request_timeout: Duration,
pub half_open_max_calls: u32,
}Expand description
Configuration for circuit breaker behavior.
This struct defines the parameters that control how the circuit breaker detects failures, manages state transitions, and handles recovery.
§Examples
use ultrafast_models_sdk::circuit_breaker::CircuitBreakerConfig;
use std::time::Duration;
let config = CircuitBreakerConfig {
failure_threshold: 5,
recovery_timeout: Duration::from_secs(30),
request_timeout: Duration::from_secs(10),
half_open_max_calls: 3,
};Fields§
§failure_threshold: u32Number of consecutive failures before opening the circuit
recovery_timeout: DurationTime to wait before testing if the provider has recovered
request_timeout: DurationMaximum time to wait for individual requests
half_open_max_calls: u32Maximum number of test calls allowed in half-open state
Trait Implementations§
Source§impl Clone for CircuitBreakerConfig
impl Clone for CircuitBreakerConfig
Source§fn clone(&self) -> CircuitBreakerConfig
fn clone(&self) -> CircuitBreakerConfig
Returns a duplicate of the value. Read more
1.0.0 · 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 CircuitBreakerConfig
impl Debug for CircuitBreakerConfig
Source§impl Default for CircuitBreakerConfig
impl Default for CircuitBreakerConfig
Source§impl<'de> Deserialize<'de> for CircuitBreakerConfig
impl<'de> Deserialize<'de> for CircuitBreakerConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for CircuitBreakerConfig
impl RefUnwindSafe for CircuitBreakerConfig
impl Send for CircuitBreakerConfig
impl Sync for CircuitBreakerConfig
impl Unpin for CircuitBreakerConfig
impl UnwindSafe for CircuitBreakerConfig
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