HTTP Keep-Alive
Problem
A webpage needs 50 resources.
If every HTTP request requires a completely new TCP connection: connect → request → close connect → request → close connect → request → close
connection setup becomes expensive.
Solution — Persistent Connections
HTTP keep-alive means keeping a connection open after a response so later requests can reuse it, including after a pause. For HTTPS, the TLS handshake establishes that connection; subsequent requests reuse it without another handshake. The client, server, or an intermediary can close it, for example after an idle timeout.
Idle timeouts are usually measured in seconds: a 60-second timeout allows closure after 60 seconds without activity; new activity normally restarts the timer.
connect ↓ request request request request ↓ close
Core idea: persistent HTTP connections amortize connection setup across multiple requests.