pub struct RateLimitingConfig {
pub enabled: bool,
pub default: String,
pub backend: String,
pub redis_url_env: Option<String>,
pub rules: Vec<RateLimitRule>,
pub backpressure: BackpressureConfig,
}Expand description
Rate-limiting configuration applied to HTTP endpoints.
Fields§
§enabled: boolWhether rate limiting is active. Default: true.
default: StringDefault rate limit (e.g., “100/minute”)
backend: StringStorage backend: memory, redis
redis_url_env: Option<String>Redis URL (if using redis storage)
rules: Vec<RateLimitRule>Custom rules
backpressure: BackpressureConfigBackpressure configuration
Trait Implementations§
Source§impl Clone for RateLimitingConfig
impl Clone for RateLimitingConfig
Source§fn clone(&self) -> RateLimitingConfig
fn clone(&self) -> RateLimitingConfig
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 RateLimitingConfig
impl Debug for RateLimitingConfig
Source§impl<'de> Deserialize<'de> for RateLimitingConfig
impl<'de> Deserialize<'de> for RateLimitingConfig
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 RateLimitingConfig
impl RefUnwindSafe for RateLimitingConfig
impl Send for RateLimitingConfig
impl Sync for RateLimitingConfig
impl Unpin for RateLimitingConfig
impl UnsafeUnpin for RateLimitingConfig
impl UnwindSafe for RateLimitingConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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