ntex
Flagship · Rust · standard configuration · completeness 4/4
ntex 2 on its own tokio-backed runtime, default configuration. Routing and extractors through ntex::web, JSON through serde_json, gzip negotiated in the handler at level 1, json-tls on 8081 through rustls.
Achievements
🥇 4 Gold · 🥉 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 |
|---|---|---|---|
| 🥇 Gold | Family composite | Composite · HTTP/1.1 | 1 of 69 |
| 🥇 Gold | Within its language | Rust · HTTP/1.1 | 1 of 7 |
| 🥇 Gold | Test profile | Efficiency · Latency-1M | 1 of 69 |
| 🥇 Gold | Test profile | Workload · JSON TLS | 1 of 65 |
| 🥉 Bronze | Test profile | Connection · Baseline | 3 of 69 |
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 | 1 of 69 | 3716 |
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 | 512 | 2,107,752 | 242us | 377us | 6706.9% | 60MiB |
| Connection | Baseline | 4,096 | 2,168,712 | 1.89ms | 2.35ms | 6440.9% | 148MiB |
| Connection | Short-lived | 512 | 1,391,050 | 357us | 2.84ms | 6339.0% | 82MiB |
| Connection | Short-lived | 4,096 | 1,449,176 | 2.81ms | 29.00ms | 6007.2% | 142MiB |
| Efficiency | Latency-1M | 1,024 | 998,354 | 134.8us | 266.0us | 3823.9% | 59MiB |
| Workload | JSON Comp | 512 | 583,007 | 865us | 6.21ms | 6526.9% | 90MiB |
| Workload | JSON Comp | 4,096 | 589,934 | 6.93ms | 50.90ms | 6296.0% | 174MiB |
| Workload | JSON Comp | 16,384 | 569,327 | 23.97ms | 75.10ms | 6242.2% | 373MiB |
| Workload | JSON TLS | 4,096 | 1,254,763 | 3.24ms | 65.93ms | 6425.7% | 159MiB |
| Workload | Upload | 32 | 16 | 204.81ms | 842.50ms | 1148.8% | 342MiB |
| Workload | Upload | 256 | 68 | 1.17s | 4.80s | 6233.2% | 975MiB |
Compared with
The Rust entries around ntex on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.
| Entry | Composite | vs ntex | |
|---|---|---|---|
| actix | 3357 | -10% | head to head |
| tokio | 2858 | -23% | head to head |
Compare ntex with any Rust entry · Compare ntex with any entry, in any language · Every Rust entry, ranked
Results updated · How the benchmark is run · The machine · Add or fix an entry