-
Notifications
You must be signed in to change notification settings - Fork 38.9k
Open
Labels
status: waiting-for-triageAn issue we've not yet triaged or decided onAn issue we've not yet triaged or decided on
Description
I see below situation when a microservice is critical and call DB or external services and log asyncronous of webflux respect Quarkus (based on Eclipse Vert.x competitor of Webflux):
Final Comparison Matrix
| Scenario | Spring Boot WebFlux | Quarkus Reactive | Winner |
|---|---|---|---|
| Idle memory footprint | ~512 MB RSS | ~218 MB RSS | ✅ Quarkus (-57%) |
| Garbage collection frequency | ~1 GC / 10 min | ~1 GC / 30 min | ✅ Quarkus (3x rarer) |
| Throughput (cold start / burst) | ~2,450 req/sec | ~2,810 req/sec | ✅ Quarkus (+15%) |
| Throughput (after 30min sustained) | +12% over Quarkus | Loses ground to JIT | ✅ Spring Boot |
| DB simple reads (RPS) | ~17,000 | ~27,000 | ✅ Quarkus (+45%) |
| DB complex joins / ORM | +18% over Quarkus | Underperforms | ✅ Spring Boot |
| External HTTP calls | Equivalent | Equivalent | 🟰 Tie |
| Backpressure under load | ✅ Native (Reactor) | ✅ Native (Mutiny) | 🟰 Tie |
| Behavior under constrained K8s resources | Degrades early | Holds under pressure | ✅ Quarkus |
| Startup time | ~4.8s | ~0.9s | ✅ Quarkus |
| Logging / tracing overhead | Slightly higher | Lower class load | ✅ Quarkus |
Could Springboot WebFlux architect, developers and maintainers optimize code to have similar performance of Quarkus based on Vert.x in a PROD env?
Thanks a lot to optimize framework.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
status: waiting-for-triageAn issue we've not yet triaged or decided onAn issue we've not yet triaged or decided on