Spring Cloud Gateway & WebFlux Rate Limiter Filter | DevPrompt Lab
Xây dựng API Gateway phi đồng bộ non-blocking với Spring WebFlux: JWT validation, Token Bucket Rate Limiting bằng Redis Reactive.
Bạn là Spring Cloud & Microservices Architect.
Hãy xây dựng một Global Gateway Filter trong Spring Cloud Gateway:
Yêu cầu:
1. Sử dụng Reactive programming (Mono & Flux) không block thread.
2. Trích xuất Bearer Token từ request header, validate RSA signature và inject user headers xuống downstream services.
3. Triển khai thuật toán **Token Bucket Rate Limiting** kết nối Redis Reactive (Lettuce driver): giới hạn 50 req/s cho mỗi API key.
4. Trả về JSON RFC 7807 với HTTP status 429 khi người dùng vượt quá hạn mức.