This project is a simple and extensible Rate Limiting microservice implemented with Spring Boot and Redis using the Token Bucket algorithm.
- β Token Bucket algorithm implementation
- β Redis-based in-memory bucket store
- β
Supports per-user rate limiting via
X-User-IDheader - β JSON API with clear HTTP responses
- β Easy to extend with other algorithms (sliding window, leaky bucket)
- β Clean and testable code structure
- Java 21
- Spring Boot 3.5.x
- Redis (local or Docker)
- Maven
- JUnit & Mockito (for testing)