pub struct RateLimitSpec {
pub max_requests: u64,
pub window_secs: u64,
}Expand description
Per-endpoint rate limiting configuration.
Declared in resource YAML:
list:
auth: [member]
rate_limit: { max_requests: 100, window_secs: 60 }Requires Redis. Silently skipped if Redis is not configured.
Fields§
§max_requests: u64Maximum requests allowed within the window.
window_secs: u64Window duration in seconds.
Trait Implementations§
Source§impl Clone for RateLimitSpec
impl Clone for RateLimitSpec
Source§fn clone(&self) -> RateLimitSpec
fn clone(&self) -> RateLimitSpec
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 RateLimitSpec
impl Debug for RateLimitSpec
Source§impl<'de> Deserialize<'de> for RateLimitSpec
impl<'de> Deserialize<'de> for RateLimitSpec
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
Source§impl PartialEq for RateLimitSpec
impl PartialEq for RateLimitSpec
Source§impl Serialize for RateLimitSpec
impl Serialize for RateLimitSpec
impl Eq for RateLimitSpec
impl StructuralPartialEq for RateLimitSpec
Auto Trait Implementations§
impl Freeze for RateLimitSpec
impl RefUnwindSafe for RateLimitSpec
impl Send for RateLimitSpec
impl Sync for RateLimitSpec
impl Unpin for RateLimitSpec
impl UnsafeUnpin for RateLimitSpec
impl UnwindSafe for RateLimitSpec
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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