pub struct TokenBucket {
pub one_time_burst: Option<i64>,
pub refill_time: i64,
pub size: i64,
}
Expand description
Implements the token bucket algorithm for rate limiting. This provides a way to control both the steady-state rate and burst capacity for operations or bandwidth.
Fields§
§one_time_burst: Option<i64>
Initial burst size
refill_time: i64
Refill time in milliseconds
size: i64
Bucket size
Trait Implementations§
Source§impl Debug for TokenBucket
impl Debug for TokenBucket
Source§impl Default for TokenBucket
impl Default for TokenBucket
Source§fn default() -> TokenBucket
fn default() -> TokenBucket
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for TokenBucket
impl<'de> Deserialize<'de> for TokenBucket
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 TokenBucket
impl RefUnwindSafe for TokenBucket
impl Send for TokenBucket
impl Sync for TokenBucket
impl Unpin for TokenBucket
impl UnwindSafe for TokenBucket
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