Rate limiting is a technique used to control the number of requests a client can make to a server within a specified timeframe.
The fixed window algorithm and sliding window algorithm are two common rate limiting algorithms.
The fixed window algorithm enforces a limit on requests within predefined time intervals, while the sliding window algorithm maintains a rolling count of requests over a defined time span.
Concurrency limiting is another rate limiting approach that restricts the number of simultaneous active requests.