HttpArena
Frameworks

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.

FamilyRankComposite
HTTP/1.152 of 711624

Every result

Alpha Round, 13 runs. Requests per second is the best of three; latency, CPU and memory come from that run.

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline4,096399,41310.22ms14.50ms6399.8%3.5GiB
ConnectionPipelined4,096487,988132.34ms220.60ms6431.9%3.7GiB
ConnectionShort-lived4,096361,0888.03ms60.00ms6329.6%4.6GiB
ConcurrencyAsync Delay32,000315,04192.29ms234.40ms6162.9%4.0GiB
EfficiencyLatency-10K1,0249,980266.0us461.0us207.6%3.5GiB
EfficiencyLatency-1M1,024410,7555481038.3us13242368.0us6381.1%3.5GiB
EfficiencyLatency-500K/81,02462,7088726178.1us17276928.0us765.4%521MiB
WorkloadJSON Comp4,096130,65028.47ms415.30ms6338.4%3.7GiB
WorkloadJSON Comp16,384126,85369.77ms700.80ms6070.5%3.7GiB
WorkloadJSON TLS4,096185,08921.56ms219.31ms6241.8%3.8GiB
Workload8Gbit51249,387307.8us769.0us1080.0%3.6GiB
WorkloadStatic TLS1,02422,99846.01ms263.52ms6652.6%4.1GiB
DatabaseAsync DB1,02488,74011.20ms79.90ms6476.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.

EntryCompositevs starlette
fastpysgi-wsgi3148+94%head to head
blackbull1658+2%head to head
sanic1630+0%head to head
uvicorn1518-6%head to head
litestar1504-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