pub struct AdaptiveRateLimitConfig {
pub enabled: bool,
pub min_rate_limit: u32,
pub max_rate_limit: u32,
pub learning_window_hours: i64,
pub adjustment_factor: f64,
pub enable_anomaly_throttling: bool,
pub enable_load_based_adjustment: bool,
pub enable_pattern_prediction: bool,
}Expand description
Adaptive rate limiting configuration
Fields§
§enabled: boolEnable adaptive rate limiting
min_rate_limit: u32Minimum rate limit (safety floor)
max_rate_limit: u32Maximum rate limit (safety ceiling)
learning_window_hours: i64Learning window in hours
adjustment_factor: f64Adjustment factor (how aggressive to adjust, 0.0-1.0)
enable_anomaly_throttling: boolEnable anomaly-based throttling
enable_load_based_adjustment: boolEnable load-based adjustment
enable_pattern_prediction: boolEnable pattern-based prediction
Trait Implementations§
Source§impl Clone for AdaptiveRateLimitConfig
impl Clone for AdaptiveRateLimitConfig
Source§fn clone(&self) -> AdaptiveRateLimitConfig
fn clone(&self) -> AdaptiveRateLimitConfig
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AdaptiveRateLimitConfig
impl Debug for AdaptiveRateLimitConfig
Source§impl Default for AdaptiveRateLimitConfig
impl Default for AdaptiveRateLimitConfig
Source§impl<'de> Deserialize<'de> for AdaptiveRateLimitConfig
impl<'de> Deserialize<'de> for AdaptiveRateLimitConfig
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 AdaptiveRateLimitConfig
impl RefUnwindSafe for AdaptiveRateLimitConfig
impl Send for AdaptiveRateLimitConfig
impl Sync for AdaptiveRateLimitConfig
impl Unpin for AdaptiveRateLimitConfig
impl UnwindSafe for AdaptiveRateLimitConfig
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more