| proxy | max sustained req/s | p50 @ 2k | p99 @ 2k | peak mem | status |
|---|---|---|---|---|---|
| zoxy0.9.0 @935a2f349 | 66.9973k | 0.34ms | 1.00ms | 199.5MiB | ok |
| nginx1.31 | 26.3987k | 0.37ms | 0.81ms | 63.2MiB | ok |
| haproxy3.4.6 | 24.5777k | 0.38ms | 1.26ms | 95.4MiB | ok |
| pingora0.8 | 13.9679k | 0.38ms | 0.99ms | 58.8MiB | ok |
| envoy— | 9.009k | 0.50ms | 1.41ms | 75.4MiB | ok |
open-loop ramp; dashed gray = perfect keep-up
container cores sampled from cAdvisor at 1Hz, on the ramp's own clock
per-window tail (log scale); each line stops where that proxy stops keeping up
offered load the proxy couldn't serve (1 − achieved/offered); the first few seconds include the generator's own ramp-up shortfall, which is not the proxy's
latency by percentile · raw zoxy.hgrm
latency by percentile · saturated at 60s — tail percentiles are a floor, not a value · raw haproxy.hgrm
latency by percentile · saturated at 60s — tail percentiles are a floor, not a value · raw nginx.hgrm
latency by percentile · saturated at 60s — tail percentiles are a floor, not a value · raw pingora.hgrm
latency by percentile · saturated at 60s — tail percentiles are a floor, not a value · raw envoy.hgrm