Junior — Senior
Construction of a request limiting system
livecode
Task condition
Develop a traffic limiting mechanism that meets the following requirements:
- Limits requests to the API (e.g., REST or gRPC).
- Prioritized restriction by IP address with the possibility of further extension (e.g., by token or user identifier).
- Expected load – about 1 million active users per day.
- Must withstand traffic spikes.
- Architecture should be distributed.
- Limitation check should occur with minimal delay.
- Ensure fault tolerance.
- When the limit is exceeded, return a clear error message. Goal – reduce the number of HTTP requests to the service and protect the system from DDoS attacks and overload.