Work out HTTP/2 stream concurrency, connections needed and the worst-case flow-control window memory a proxy commits.
HTTP/2 multiplexes many requests over one TCP connection, so concurrency is bounded by streams rather than sockets. Little's law converts request rate and duration into the streams genuinely in flight, which is normally far below the advertised ceiling. The flow-control window is the trap: a generous per-stream window multiplied by the advertised stream limit is a memory commitment measured in gigabytes, and it is what makes an HTTP/2 proxy vulnerable to slow-read attacks.
HTTP/2 Stream
stream capacity = max concurrent streams × connections; streams in flight = requests per second × request duration (Little's law).
stream capacity = max concurrent streams × connections; streams in flight = requests per second × request duration (Little's law). HTTP/2 multiplexes many requests over one TCP connection, so concurrency is bounded by streams rather than sockets. Little's law converts request rate and duration into the streams genuinely in flight, which is normally far below the advertised ceiling.
The flow-control window is the trap: a generous per-stream window multiplied by the advertised stream limit is a memory commitment measured in gigabytes, and it is what makes an HTTP/2 proxy vulnerable to slow-read attacks.
This calculator takes 5 inputs: SETTINGS_MAX_CONCURRENT_STREAMS, HTTP/2 connections, Requests per second, Average request duration, Per-stream flow-control window. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.