axum
Flagship · Rust · engine: hyper · standard configuration · completeness 4/4
Axum 0.8 on hyper with the multi-threaded Tokio runtime, default configuration. Routing and path/query extractors through the Axum API, serde_json via the Json response, gzip through the tower-http compression layer.
Achievements
🥉 1 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 |
|---|---|---|---|
| 🥉 Bronze | Test profile | Efficiency · Latency-10K | 3 of 72 |
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 | 10 of 72 | 4508 |
Every result
Alpha Round, 11 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,080,638 | 3.80ms | 6.68ms | 3483.1% | 192MiB |
| Connection | Pipelined | 4,096 | 6,474,608 | 10.09ms | 32.40ms | 6330.5% | 222MiB |
| Connection | Short-lived | 4,096 | 685,038 | 5.97ms | 26.40ms | 5255.9% | 287MiB |
| Concurrency | Async Delay | 32,000 | 248,322 | 127.14ms | 177.40ms | 1680.6% | 1.4GiB |
| Efficiency | Latency-10K | 1,024 | 9,983 | 71.0us | 102.0us | 22.7% | 82MiB |
| Efficiency | Latency-1M | 1,024 | 997,935 | 780.6us | 2925.0us | 2715.5% | 96MiB |
| Efficiency | Latency-500K/8 | 1,024 | 350,127 | 2983587.6us | 5900288.0us | 783.9% | 51MiB |
| Workload | JSON Comp | 4,096 | 268,142 | 15.26ms | 47.70ms | 6179.1% | 299MiB |
| Workload | JSON Comp | 16,384 | 235,317 | 68.71ms | 173.50ms | 5878.4% | 894MiB |
| Workload | JSON TLS | 4,096 | 967,831 | 3.91ms | 59.44ms | 6144.1% | 199MiB |
| Workload | 8Gbit | 512 | 49,058 | 102.7us | 146.0us | 265.8% | 89MiB |
Compared with
The Rust entries around axum on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.
| Entry | Composite | vs axum | |
|---|---|---|---|
| actix | 6799 | +51% | head to head |
| tokio | 4738 | +5% | head to head |
| mq-bridge | 4563 | +1% | head to head |
| tokio-uring | 3462 | -23% | head to head |
| hyper | 3345 | -26% | head to head |
Compare axum with any Rust entry · Compare axum with any entry, in any language · Every Rust entry, ranked
Results updated · How the benchmark is run · The machine · Add or fix an entry