Design a Per-User Rate Limiter

Asked at Amazon · System Design for ML · Difficulty: Medium · Last asked Apr 15, 2026

Build a per-user rate limiter that protects a service from request floods. Each user may make at most `limit` accepted requests in any sliding window of `window` seconds; requests over that budget are rejected. Implement the limiter for a single process, then explain how the design handles memory, concurrency and many gateway servers.

Loading the problem…