spring-boot
Flagship · Java · engine: tomcat · standard configuration
Spring Boot with embedded Tomcat on JDK 25 with virtual threads.
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. 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 | 31 of 71 | 268 |
| HTTP/2 | 15 of 16 | 10 |
Every result
Alpha Round, 26 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 | 512 | 278,960 | 1.71ms | 3.64ms | 2080.0% | 2.1GiB |
| Connection | Baseline | 4,096 | 259,473 | 8.25ms | 16.10ms | 2040.5% | 2.5GiB |
| Connection | Pipelined | 512 | 561,637 | 12.44ms | 65.50ms | 2260.1% | 1.4GiB |
| Connection | Pipelined | 4,096 | 548,229 | 48.92ms | 373.20ms | 2184.2% | 2.3GiB |
| Connection | Short-lived | 512 | 228,052 | 2.02ms | 4.01ms | 1879.4% | 1.4GiB |
| Connection | Short-lived | 4,096 | 208,860 | 10.23ms | 18.20ms | 1746.0% | 2.4GiB |
| Workload | JSON | 4,096 | 244,820 | 7.76ms | 15.40ms | 2687.5% | 2.0GiB |
| Workload | JSON Comp | 512 | 198,537 | 2.36ms | 4.91ms | 4554.7% | 1.7GiB |
| Workload | JSON Comp | 4,096 | 198,628 | 12.22ms | 20.10ms | 4801.7% | 2.4GiB |
| Workload | JSON Comp | 16,384 | 183,986 | 32.00ms | 55.90ms | 4145.5% | 2.6GiB |
| Workload | JSON TLS | 4,096 | 188,030 | 20.64ms | - | 2659.2% | 3.2GiB |
| Workload | Upload | 32 | 2,674 | 11.93ms | 36.30ms | 2264.2% | 1.0GiB |
| Workload | Upload | 256 | 2,924 | 81.05ms | 336.50ms | 3737.2% | 1.1GiB |
| Workload | Static | 1,024 | 33,205 | 32.66ms | 32.66ms | 7387.3% | 1.1GiB |
| Workload | Static | 4,096 | 32,801 | 111.60ms | 111.60ms | 7049.3% | 1.5GiB |
| Workload | Static | 6,800 | 32,678 | 156.16ms | 156.16ms | 6936.3% | 1.4GiB |
| Workload | Static TLS | 1,024 | 143,403 | 6.82ms | 22.07ms | 4835.5% | 3.5GiB |
| Workload | Static TLS | 4,096 | 134,714 | 27.33ms | 112.89ms | 4573.0% | 4.3GiB |
| Workload | Static TLS | 6,800 | 127,705 | 46.42ms | 233.71ms | 4554.6% | 4.3GiB |
| Database | Async DB | 1,024 | 18,569 | 51.18ms | 80.40ms | 991.7% | 1.7GiB |
| Multi-endpoint | API-4 | 256 | 17,411 | 13.75ms | 164.90ms | 395.8% | 703.3MiB |
| Multi-endpoint | API-16 | 1,024 | 33,053 | 28.04ms | 93.80ms | 1171.9% | 1.2GiB |
| HTTP/2 | Baseline | 256 | 363,192 | 68.12ms | 68.12ms | 5404.4% | 11.0GiB |
| HTTP/2 | Baseline | 1,024 | 295,341 | 288.80ms | 288.80ms | 5434.4% | 26.5GiB |
| HTTP/2 | Static | 256 | 31,045 | 725.82ms | 725.82ms | 5945.7% | 7.2GiB |
| HTTP/2 | Static | 1,024 | 30,063 | 1.57s | 1.57s | 6068.9% | 12.2GiB |
How the benchmark is run · The machine · Add or fix an entry