Heim  >  Artikel  >  Web-Frontend  >  Persistente HTTP-Verbindung und Pipeline

Persistente HTTP-Verbindung und Pipeline

yulia
yuliaOriginal
2018-09-08 17:45:002212Durchsuche

1. Was ist eine dauerhafte Verbindung? (Keep-Alive-Modus)
HTTP 1.1 legt fest, dass die Standardverbindung eine lange Verbindung aufrechterhält (persistente HTTP-Verbindung, auch als persistente Verbindung übersetzt). Nach Abschluss der Datenübertragung wird die TCP-Verbindung nicht getrennt ( Es werden keine RST-Pakete gesendet, kein viermaliger Handshake. Das Warten auf die weitere Verwendung dieses Kanals zur Übertragung von Daten unter demselben Domänennamen ist eine kurze Verbindung.

HTTP Version 1.1 unterstützt dauerhafte Verbindungen, Version 1.0 jedoch nicht.
Unterschiede zu nicht dauerhaften Verbindungen:
Persistente Verbindungen ermöglichen, dass die Client-zu-Server-Verbindung gültig bleibt, sodass keine erneute Verbindung erforderlich ist -Verbindung herstellen
Reduziert Verzögerungen beim Verbindungsaufbau und beim Schließen erheblich. HTTP-Verbindungen basieren auf dem TCP-Protokoll. Der Aufbau einer TCP-Verbindung erfordert drei Handshakes und das Schließen der TCP-Verbindung erfordert vier Wellen. Das alles braucht Zeit.

2. Was ist Pipeline?
Der Pipeline-Mechanismus muss über eine dauerhafte Verbindung abgeschlossen werden. Nur HTTP/1.1 unterstützt diese Technologie (HTTP/1.0 unterstützt sie nicht). )
Bei der Verwendung dauerhafter Verbindungen erfolgt die Zustellung einer bestimmten Verbindungsnachricht ähnlich wie
Anfrage 1 -> Antwort 2 -> Verbindung Die Nachricht sieht etwa so aus
Anfrage 1 ->Anfrage 1 ->Antwort 3

[Hinweis]

a. Der Unterschied zwischen persistenten Verbindungen und Pipeline-Verbindungen besteht darin, dass Anfragen und Antworten nacheinander erst gesendet werden, nachdem die Antwort auf Anfrage 1 eingegangen ist. und die Pipeline-Verarbeitung muss nicht auf die Antwort der vorherigen Anfrage warten, um mit der nächsten Anfrage fortzufahren. Implementieren Sie das parallele Senden von Anfragen.

b. Es können nur GET- und HEAD-Anforderungen weitergeleitet werden, während POST eingeschränkt ist.


c Der Pipeline-Mechanismus sollte nicht gestartet werden, wenn die Verbindung zum ersten Mal erstellt wird (Server) unterstützt nicht unbedingt die HTTP/1.1-Version des Protokolls

d. HTTP1.1 erfordert, dass der Server die Pipeline-Verarbeitung unterstützt, aber es erfordert nicht, dass der Server auch die Antwort weiterleitet dass Pipeline-Anfragen nicht verarbeitet werden können und viele serverseitige und Agent-Programme derzeit keine gute Pipeline-Unterstützung bieten. Moderne Browser Chrome und Firefox aktivieren die Pipeline-Unterstützung standardmäßig nicht.

Persistente HTTP-Verbindung und Pipeline

Das obige ist der detaillierte Inhalt vonPersistente HTTP-Verbindung und Pipeline. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn