quarkus-jvm
Flagship · Java · engine: netty · tuned configuration · completeness 4/4
Quarkus with RESTEasy Reactive on Vert.x/Netty, JDK 21, optimized JVM tuning.
Achievements
🥇 2 Gold · 🥈 4 Silver · 🥉 3 Bronze. Top three of a field, taken in this entry's own league: the family composite, the same composite among entries written in the same language, and each test profile it is scored on. Every field is the one the badges publish, so a medal and a badge always say the same thing. How medals are awarded.
| Medal | Award | Field | Rank |
|---|---|---|---|
| 🥇 Gold | Within its language | Java · HTTP/2 | 1 of 4 |
| 🥇 Gold | Within its language | Java · gRPC | 1 of 3 |
| 🥈 Silver | Family composite | Composite · gRPC | 2 of 8 |
| 🥈 Silver | Test profile | Efficiency · Latency-10K | 2 of 93 |
| 🥈 Silver | Test profile | gRPC · Unary | 2 of 8 |
| 🥈 Silver | Test profile | gRPC · Unary TLS | 2 of 8 |
| 🥉 Bronze | Within its language | Java · HTTP/1.1 | 3 of 7 |
| 🥉 Bronze | Test profile | HTTP/2 · Baseline | 3 of 27 |
| 🥉 Bronze | Test profile | HTTP/2 · Baseline (h2c) | 3 of 20 |
Composite rank
Each profile of a family is worth 100 to the entry that leads it, and the composite is the sum over the family, less 2.5% for each of routing, middleware, request and response the entry does not do for you - its completeness factor, which the WebSocket and gRPC families do not carry. The field is this entry's own league: engines and reverse proxies are scored apart from frameworks. How it works.
| Family | Rank | Composite |
|---|---|---|
| HTTP/1.1 | 22 of 93 | 3788 |
| HTTP/2 | 4 of 28 | 1975 |
| gRPC | 2 of 8 | 1399 |
Every result
Alpha Round, 27 runs. Requests per second is the best of three; latency, CPU and memory come from that run.
| Category | Profile | Conns | Req/sec | Avg | p99 | CPU | Memory |
|---|---|---|---|---|---|---|---|
| Connection | Baseline | 4,096 | 1,818,132 | 2.25ms | 4.56ms | 6494.8% | 6.8GiB |
| Connection | Pipelined | 4,096 | 7,858,636 | 8.36ms | 17.10ms | 6164.9% | 10.0GiB |
| Connection | Short-lived | 4,096 | 564,503 | 7.21ms | 73.30ms | 3256.4% | 2.1GiB |
| Concurrency | Async Delay | 32,000 | 111,838 | 279.81ms | 502.10ms | 907.2% | 5.5GiB |
| Efficiency | Latency-10K | 1,024 | 9,983 | 80.0us | 118.0us | 36.8% | 789MiB |
| Efficiency | Latency-1M | 1,024 | 997,451 | 217.5us | 1046.0us | 3866.9% | 6.6GiB |
| Efficiency | Latency-500K/8 | 1,024 | 320,050 | 3613219.8us | 7088128.0us | 781.6% | 685MiB |
| Workload | JSON Comp | 4,096 | 301,675 | 13.57ms | 37.10ms | 6256.5% | 10.3GiB |
| Workload | JSON Comp | 16,384 | 295,496 | 54.75ms | 123.70ms | 5941.0% | 10.7GiB |
| Workload | JSON TLS | 4,096 | 588,855 | 7.48ms | 194.53ms | 6481.8% | 10.3GiB |
| Workload | 8Gbit | 512 | 49,395 | 216.0us | 969.0us | 764.1% | 2.3GiB |
| Workload | Static TLS | 1,024 | 339,193 | 3.07ms | 46.64ms | 6367.8% | 10.2GiB |
| Database | Async DB | 1,024 | 141,640 | 6.72ms | 46.00ms | 4001.9% | 10.2GiB |
| Database | Fortunes | 1,024 | 87,776 | 10.43ms | 57.10ms | 4775.4% | 10.7GiB |
| HTTP/2 | Baseline | 256 | 4,668,449 | 5.36ms | 32.25ms | 6303.4% | 10.4GiB |
| HTTP/2 | Baseline | 1,024 | 4,425,573 | 21.74ms | 92.77ms | 6322.7% | 10.6GiB |
| HTTP/2 | Static | 256 | 173,987 | 46.44ms | 263.50ms | 6462.1% | 10.7GiB |
| HTTP/2 | Static | 1,024 | 161,733 | 197.36ms | 738.99ms | 6324.3% | 11.5GiB |
| HTTP/2 | Baseline (h2c) | 256 | 6,188,551 | 4.12ms | 4.12ms | 6161.5% | 10.2GiB |
| HTTP/2 | Baseline (h2c) | 1,024 | 6,180,019 | 15.99ms | 15.99ms | 6016.8% | 10.1GiB |
| HTTP/2 | Baseline (h2c) | 4,096 | 6,109,902 | 63.52ms | 63.52ms | 6043.4% | 10.6GiB |
| HTTP/2 | JSON (h2c) | 1,024 | 1,034,480 | 31.04ms | 31.04ms | 6321.0% | 10.2GiB |
| HTTP/2 | JSON (h2c) | 4,096 | 1,039,944 | 120.01ms | 120.01ms | 6365.2% | 10.7GiB |
| gRPC | Unary | 256 | 2,622,540 | 10.26ms | 10.26ms | 5754.5% | 10.4GiB |
| gRPC | Unary | 1,024 | 2,611,600 | 39.79ms | 39.79ms | 5558.7% | 10.4GiB |
| gRPC | Unary TLS | 256 | 2,633,400 | 10.78ms | 10.78ms | 5783.5% | 10.4GiB |
| gRPC | Unary TLS | 1,024 | 2,572,680 | 39.73ms | 39.73ms | 5659.5% | 10.5GiB |
Compared with
The Java entries around quarkus-jvm on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.
| Entry | Composite | vs quarkus-jvm | |
|---|---|---|---|
| vertx | 5324 | +41% | head to head |
| cardigan | 5294 | +40% | head to head |
| micronaut | 4443 | +17% | head to head |
| helidon-tuned | 3760 | -1% | head to head |
| helidon-production | 3226 | -15% | head to head |
Compare quarkus-jvm with any Java entry · Compare quarkus-jvm with any entry, in any language · Every Java entry, ranked
Results updated · How the benchmark is run · The machine · Add or fix an entry