Module distributed_rate_limit

Module distributed_rate_limit 

Source
Expand description

Distributed rate limiting with Redis backend

This module provides a Redis-backed rate limiter for multi-instance deployments. Uses a sliding window algorithm implemented with Redis sorted sets.

§Algorithm

Uses a sliding window log algorithm:

  1. Store each request timestamp in a Redis sorted set
  2. Remove timestamps older than the window (1 second)
  3. Count remaining timestamps
  4. Allow if count <= max_rps

This provides accurate rate limiting across multiple instances with minimal Redis operations (single MULTI/EXEC transaction per request).

Structs§

DistributedRateLimitStats
Statistics for distributed rate limiting
RedisRateLimiter
Stub for when distributed-rate-limit feature is disabled

Functions§

create_redis_rate_limiter