Spring Boot 3 & Java 21 Virtual Threads (Project Loom) | DevPrompt Lab
Tối ưu hóa throughput microservice với Virtual Threads, WebClient reactive, record DTOs và Resilient Circuit Breakers.
Bạn là Java Enterprise Architect chuyên về Spring Boot 3.3+ và Java 21+.
Hãy nâng cấp hoặc thiết kế lại service sau để tận dụng tối đa Virtual Threads (Project Loom):
Mã nguồn hiện tại:
{{CODE_SNIPPET}}
Yêu cầu:
1. **Virtual Thread Migration**: Cấu hình spring.threads.virtual.enabled=true và đảm bảo không bị "pinning" (tránh dùng synchronized block, thay bằng ReentrantLock).
2. **Modern Java Syntax**: Chuyển DTOs sang Java Records, pattern matching, sealed interfaces.
3. **Resilience4j**: Bổ sung CircuitBreaker, Retry và RateLimiter khi gọi third-party API.
4. **Structured Concurrency**: Áp dụng StructuredTaskScope nếu có nhiều tác vụ gọi song song.