HTTP/2, HTTP/3, and Connection Reuse
HTTP/2 multiplexes streams over a TCP connection and compresses headers, reducing setup overhead. TCP packet loss can still delay streams sharing that connection. HTTP/3 uses QUIC over UDP and provides stream-level transport behavior that can reduce cross-stream head-of-line blocking.
Connection reuse avoids repeated TCP and TLS handshakes but keeps resources open and can preserve an unhealthy routing choice. Configure keep-alive, idle timeouts, connection draining, and pool sizes based on real intermediaries and workload. Protocol choice alone does not solve slow database queries, large payloads, or server queueing.
Measure DNS time, TCP connection time, TLS negotiation, time to first byte, and transfer duration separately. A single generic timeout obscures whether a problem is in name resolution, network setup, server processing, or response transfer.
- HTTP/2 multiplexes over TCP; HTTP/3 uses QUIC.
- Connection reuse reduces setup cost but consumes resources.
- Break latency into distinct network and application phases.