starlette
Flagship · Python · engine: uvicorn · standard configuration · completeness 4/4
Starlette 1.6 on uvicorn (uvloop), one worker per core, same uvicorn configuration as the fastapi entry. Routing through Starlette routes, JSON through JSONResponse, gzip through the Starlette GZipMiddleware.
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 | 52 of 71 | 1624 |
Every result
Alpha Round, 13 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 | 399,413 | 10.22ms | 14.50ms | 6399.8% | 3.5GiB |
| Connection | Pipelined | 4,096 | 487,988 | 132.34ms | 220.60ms | 6431.9% | 3.7GiB |
| Connection | Short-lived | 4,096 | 361,088 | 8.03ms | 60.00ms | 6329.6% | 4.6GiB |
| Concurrency | Async Delay | 32,000 | 315,041 | 92.29ms | 234.40ms | 6162.9% | 4.0GiB |
| Efficiency | Latency-10K | 1,024 | 9,980 | 266.0us | 461.0us | 207.6% | 3.5GiB |
| Efficiency | Latency-1M | 1,024 | 410,755 | 5481038.3us | 13242368.0us | 6381.1% | 3.5GiB |
| Efficiency | Latency-500K/8 | 1,024 | 62,708 | 8726178.1us | 17276928.0us | 765.4% | 521MiB |
| Workload | JSON Comp | 4,096 | 130,650 | 28.47ms | 415.30ms | 6338.4% | 3.7GiB |
| Workload | JSON Comp | 16,384 | 126,853 | 69.77ms | 700.80ms | 6070.5% | 3.7GiB |
| Workload | JSON TLS | 4,096 | 185,089 | 21.56ms | 219.31ms | 6241.8% | 3.8GiB |
| Workload | 8Gbit | 512 | 49,387 | 307.8us | 769.0us | 1080.0% | 3.6GiB |
| Workload | Static TLS | 1,024 | 22,998 | 46.01ms | 263.52ms | 6652.6% | 4.1GiB |
| Database | Async DB | 1,024 | 88,740 | 11.20ms | 79.90ms | 6476.7% | 3.7GiB |
Compared with
The Python entries around starlette on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.
| Entry | Composite | vs starlette | |
|---|---|---|---|
| fastpysgi-wsgi | 3148 | +94% | head to head |
| blackbull | 1658 | +2% | head to head |
| sanic | 1630 | +0% | head to head |
| uvicorn | 1518 | -6% | head to head |
| litestar | 1504 | -7% | head to head |
Compare starlette with any Python entry · Compare starlette with any entry, in any language · Every Python entry, ranked
Results updated · How the benchmark is run · The machine · Add or fix an entry