pub struct AsyncPoolConfig {
pub size: usize,
pub reconnect_backoff: Duration,
pub circuit_open_duration: Duration,
pub exhaustion_policy: ExhaustionPolicy,
pub validation_mode: ValidationMode,
pub circuit_failure_threshold: u32,
pub shutdown_timeout: Duration,
}Expand description
Async pool configuration.
Fields§
§size: usizeNumber of connections in the pool
reconnect_backoff: DurationBackoff duration before retry reconnection
circuit_open_duration: DurationHow long circuit breaker stays open
exhaustion_policy: ExhaustionPolicyWhat to do when pool is exhausted
validation_mode: ValidationModeHow to handle startup failures
circuit_failure_threshold: u32Number of consecutive failures before opening circuit
shutdown_timeout: DurationTimeout for graceful shutdown drain.
Note: This field is currently reserved for future use. The current shutdown implementation closes connections immediately.
Implementations§
Source§impl AsyncPoolConfig
impl AsyncPoolConfig
pub fn new() -> Self
pub fn size(self, size: usize) -> Self
pub fn reconnect_backoff(self, duration: Duration) -> Self
pub fn circuit_open_duration(self, duration: Duration) -> Self
pub fn exhaustion_policy(self, policy: ExhaustionPolicy) -> Self
pub fn validation_mode(self, mode: ValidationMode) -> Self
pub fn circuit_failure_threshold(self, threshold: u32) -> Self
pub fn shutdown_timeout(self, timeout: Duration) -> Self
Trait Implementations§
Source§impl Clone for AsyncPoolConfig
impl Clone for AsyncPoolConfig
Source§fn clone(&self) -> AsyncPoolConfig
fn clone(&self) -> AsyncPoolConfig
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 AsyncPoolConfig
impl Debug for AsyncPoolConfig
Auto Trait Implementations§
impl Freeze for AsyncPoolConfig
impl RefUnwindSafe for AsyncPoolConfig
impl Send for AsyncPoolConfig
impl Sync for AsyncPoolConfig
impl Unpin for AsyncPoolConfig
impl UnwindSafe for AsyncPoolConfig
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