Building a Distributed Rate Limiter
Designing a rate limiter that works across multiple servers is harder than a single-server rate limiter.
Architecture
Algorithm: Sliding Window with Redis
limit β reject (429 Too Many Requests)
5. Set TTL on key (auto-expire old windows)
Redis commands:
MULTI
INCR rate_limit:user123:42
EXPIRE rate_limit:user123:42 60
EXEC
Edge Cases