Design of a Rate Limiter

Learn to design Rate Limiters, that help gauge and throttle resources used across our system.

High-level design

A rate limiter can be deployed as a separate service that will interact with a web server, as shown in the following figure. When a request is received, the rate limiter suggests whether the request should be forwarded to the server or not. The rate limiter consists of rules which should be followed by each incoming request. These rules define the throttling limit for each operation. Let’s go through a rate-limiter rule from Lyft, which has open-sourced its rate-limiting component.

Create a free account to access the full course.

By signing up, you agree to Educative's Terms of Service and Privacy Policy