Expand description
§SZ-ORM Limit — Rate Limiter
Provides token bucket and sliding window rate limiting, with built-in OOM protection (default max_keys=10000).
§Main types
RateLimitertrait — rate limiter interfaceTokenBucketLimiter— token bucket implementationSlidingWindowLimiter— sliding window implementation
v0.2.1 fixes Critical S-3: introduces DEFAULT_MAX_KEYS to prevent unbounded keys from causing OOM.
Re-exports§
pub use composite::CompositeLimiter;pub use composite::CompositeStrategy;pub use composite::FallbackLimiter;pub use composite::LimitKeyBuilder;pub use composite::RateLimitRule;pub use composite::RuleSet;pub use concurrency::ConcurrencyGuard;pub use concurrency::ConcurrencyLimiter;pub use concurrency::ConcurrencyStats;pub use concurrency::TimedConcurrencyLimiter;pub use config_builder::ConfigError;pub use config_builder::LimitAlgorithm;pub use config_builder::RateLimitConfig;pub use config_builder::RateLimitConfigBuilder;pub use config_builder::TieredConfigBuilder;pub use config_builder::TieredRateLimitConfig;pub use leaky_bucket::LeakyBucketLimiter;pub use leaky_bucket::LeakyBucketStats;pub use leaky_bucket::SlidingWindowLogLimiter;pub use metrics::Alert;pub use metrics::MetricsSnapshot;pub use metrics::RateLimitMetrics;pub use metrics::RateLimitMonitor;
Modules§
- composite
- 限流策略组合器(Composite Limiter)
- concurrency
- 并发限流器(Concurrency Limiter)
- config_
builder - 限流配置构建器(Rate Limit Config Builder)
- leaky_
bucket - 漏桶限流器(Leaky Bucket Limiter)
- metrics
- 限流统计与监控(Rate Limit Metrics)
Structs§
- Distributed
Rate Limiter - Distributed rate limiter
- Fixed
Window Rate Limiter - Fixed window rate limiter
- InMemory
Backend - In-memory backend (simulates Redis)
- Multi
Rate Limiter - Multi-dimensional rate limiting strategy
- Rate
Limit Headers - Rate limit response headers
- Rate
Limit Response - Rate limit response
- Rate
Limit Result - Sliding
Window Rate Limiter - Token
Bucket Rate Limiter
Enums§
- Rate
Limit Error - Rate
Limit Response Strategy - Rate limit response strategy
Constants§
- DEFAULT_
MAX_ KEYS - Default maximum number of keys (added in v0.2.1, fixes Critical S-3 OOM DoS)
Traits§
- Distributed
Backend - Distributed backend trait
- Rate
Limiter