pub struct RateLimiterConfig {
pub requests_per_second: u64,
pub burst_capacity: u64,
pub adaptive: bool,
pub initial_rate: Option<u64>,
}
Expand description
Configuration for rate limiting behavior
Fields§
§requests_per_second: u64
Maximum requests per second
burst_capacity: u64
Burst capacity for handling traffic spikes
adaptive: bool
Whether to use adaptive rate limiting
initial_rate: Option<u64>
Initial rate for adaptive mode
Implementations§
Source§impl RateLimiterConfig
impl RateLimiterConfig
Sourcepub fn production() -> Self
pub fn production() -> Self
Create a production-ready configuration
Sourcepub fn development() -> Self
pub fn development() -> Self
Create a development configuration with higher limits
Sourcepub fn conservative() -> Self
pub fn conservative() -> Self
Create a conservative configuration for rate-limited providers
Trait Implementations§
Source§impl Clone for RateLimiterConfig
impl Clone for RateLimiterConfig
Source§fn clone(&self) -> RateLimiterConfig
fn clone(&self) -> RateLimiterConfig
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 RateLimiterConfig
impl Debug for RateLimiterConfig
Source§impl Default for RateLimiterConfig
impl Default for RateLimiterConfig
Source§impl<'de> Deserialize<'de> for RateLimiterConfig
impl<'de> Deserialize<'de> for RateLimiterConfig
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 RateLimiterConfig
impl RefUnwindSafe for RateLimiterConfig
impl Send for RateLimiterConfig
impl Sync for RateLimiterConfig
impl Unpin for RateLimiterConfig
impl UnwindSafe for RateLimiterConfig
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