EMZETT.
Login

HTTP Keep-Alive

Kurz: Mit Keep-Alive bleibt eine TCP-Verbindung nach einer Antwort offen und wird für weitere Anfragen wiederverwendet, statt jedes Mal neu aufgebaut zu werden.

Genauer: Jeder Verbindungsaufbau kostet mehrere Hin- und Rückwege (TCP-Handshake, bei HTTPS zusätzlich TLS). Wird die Verbindung beibehalten, sparen Folgeanfragen diese Zeit.

Im Detail

  • HTTP/1.1: Keep-Alive ist Standard, mit Connection: close kann man es abschalten.
  • HTTP/2 und 3: Mehrere Anfragen laufen gleichzeitig über eine einzige Verbindung (Multiplexing).
  • Timeouts: Server schließen ungenutzte Verbindungen nach einigen Sekunden, um Ressourcen zu sparen.
  • Load Balancer: Haben eigene Leerlauf-Zeitlimits. Ist das Limit des Clients länger, entstehen abgebrochene Verbindungen.
  • Praxis: HTTP-Clients sollten einen gemeinsamen Verbindungspool nutzen.

Siehe auch: Connection Pooling