HARD

Distributed Rate Limiter

Rate limit API requests across distributed servers. Support various strategies.

Estimated Time: 90 minutes
#rate-limiting#api#scale

Solution Overview

Token bucket refills at constant rate with burst allowance. Sliding window tracks requests in time windows. Distributed rate limiting uses Redis for shared counters. Allows graceful degradation under overload.

Architecture Pattern

Token bucket and sliding window rate limiting algorithms

Key Concepts

Token BucketSliding WindowDistributed CountersQuota ManagementThrottling

Used By Companies

StripeGitHubTwilio

Learn Implementation Details

Explore a complete guide for building this system from scratch with step-by-step tutorials:

Solution Overview

Token bucket refills at constant rate with burst allowance. Sliding window tracks requests in time windows. Distributed rate limiting uses Redis for shared counters. Allows graceful degradation under overload.

Companies
  • Stripe
  • GitHub
  • Twilio
Key Concepts
  • Token Bucket
  • Sliding Window
  • Distributed Counters
  • Quota Management
  • Throttling
Implementation Url

https://github.com/codecrafters-io/build-your-own-x