shlogg · Early preview
Prashant Mishra @prashantrmishra

Software Engineering Rate Limiter Design Considerations

Rate limiters throttle users based on API requests in a given time period. Types include Hard, Soft, and Elastic throttling. Use cases include protecting systems from denial-of-service attacks and optimizing system bandwidth.

Rate limiter:
what is rate limiter: service that can be used to throttle users based on number of requests that a user is allowed to send in a given time period to an API.
What are different types of throttling?
Here are the three famous throttling types that are used by different services:
Hard Throttling: The number of API requests cannot exceed the throttle limit.
Soft Throttling: In this type, we can set the API request limit to exceed a certain percentage. For example, if we have rate-limit of 100 messages a minute and 10% exceed-limit, our rate limiter will allow up to 110 messages per m...