HttpArena
Frameworks

starlette

Flagship · Python · engine: uvicorn · standard configuration

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. The field is this entry's own league: engines and reverse proxies are scored apart from frameworks. How it works.

FamilyRankComposite
HTTP/1.154 of 71137

Every result

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

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline512410,4831.25ms2.49ms6493.9%1.4GiB
ConnectionBaseline4,096412,7459.89ms11.80ms6375.5%1.5GiB
ConnectionPipelined512505,53216.21ms18.60ms6536.2%1.4GiB
ConnectionPipelined4,096498,546129.06ms183.70ms6415.6%1.6GiB
ConnectionShort-lived512360,8801.41ms3.08ms6497.2%2.6GiB
ConnectionShort-lived4,096366,3117.82ms59.30ms6335.0%2.6GiB
WorkloadJSON4,096228,62316.26ms237.20ms6377.2%1.8GiB
WorkloadJSON Comp512131,9123.88ms8.84ms6426.3%1.6GiB
WorkloadJSON Comp4,096131,86228.41ms411.30ms6342.6%1.6GiB
WorkloadJSON Comp16,384128,05775.50ms662.70ms6076.6%1.7GiB
WorkloadUpload322,13414.95ms68.50ms2323.2%1.5GiB
WorkloadUpload2561,558159.24ms817.70ms6279.8%1.7GiB

How the benchmark is run · The machine · Add or fix an entry