SysDesigner

Design a Rate Limiter

Easy

Design a service that limits how often users can perform certain actions, such as API requests.

Functional Requirements

  • Limit number of requests per user per time window
  • Support burst traffic and fair throttling
  • Expose an API to check if request is allowed

Non-Functional Requirements

  • Latency under 50ms for throttle check
  • Handle 1M+ requests per second
  • Support distributed rate limiting

Define Entities

Define API Routes

Components