Cardigan
Engine · Java · engine: io_uring
Java HTTP engine built on io_uring, Panama FFI, virtual threads, and thread-per-core event loops.
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 | 7 of 34 | 231 |
| HTTP/2 | 1 of 6 | 265 |
| gRPC | 2 of 3 | 352 |
Every result
Alpha Round, 20 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 | 3,612,505 | 141us | 343us | 6362.6% | 5.3GiB |
| Connection | Baseline | 4,096 | 3,644,808 | 1.12ms | 3.48ms | 6400.4% | 5.8GiB |
| Connection | Pipelined | 512 | 41,904,988 | 194us | 418us | 6383.8% | 5.3GiB |
| Connection | Pipelined | 4,096 | 39,349,212 | 1.66ms | 6.40ms | 6406.3% | 5.8GiB |
| Connection | Short-lived | 512 | 2,478,558 | 192us | 628us | 5626.4% | 5.2GiB |
| Connection | Short-lived | 4,096 | 2,625,469 | 1.43ms | 2.50ms | 6020.7% | 5.9GiB |
| Workload | JSON TLS | 4,096 | 994,112 | 4.80ms | 434.17ms | 6454.2% | 6.8GiB |
| HTTP/2 | Baseline | 256 | 14,527,331 | 1.12ms | 21.48ms | 2017.8% | 5.6GiB |
| HTTP/2 | Baseline | 1,024 | 13,897,916 | 3.53ms | 110.26ms | 1767.2% | 5.6GiB |
| HTTP/2 | Static | 256 | 735,295 | 10.92ms | 192.15ms | 2915.3% | 6.0GiB |
| HTTP/2 | Static | 1,024 | 710,171 | 42.42ms | 1.19s | 2909.9% | 7.0GiB |
| HTTP/2 | Baseline (h2c) | 256 | 14,534,155 | 1.18ms | 13.79ms | 1487.5% | 5.3GiB |
| HTTP/2 | Baseline (h2c) | 1,024 | 14,518,361 | 4.20ms | 48.47ms | 1516.9% | 5.4GiB |
| HTTP/2 | Baseline (h2c) | 4,096 | 13,673,578 | 18.27ms | 260.95ms | 1308.0% | 6.3GiB |
| gRPC | Unary | 256 | 5,953,600 | 7.09ms | 223.94ms | 3208.0% | 5.9GiB |
| gRPC | Unary | 1,024 | 2,391,774 | 74.38ms | 481.65ms | 6426.5% | 6.2GiB |
| gRPC | Unary TLS | 256 | 6,974,014 | 2.22ms | 23.70ms | 1689.6% | 5.8GiB |
| gRPC | Unary TLS | 1,024 | 6,561,844 | 8.40ms | 83.97ms | 1878.5% | 6.1GiB |
| gRPC | Stream | 64 | 9,550,000 | 128.03ms | 503.99ms | 41.5% | 4.9GiB |
| gRPC | Stream TLS | 64 | 9,697,000 | 126.73ms | 475.19ms | 63.6% | 5.0GiB |
How the benchmark is run · The machine · Add or fix an entry