Mailinglisten-Archive |
On 2002-05-12 15:33:10, Jens Benecke wrote: > > ..TP/1.1-Anfragen alles als chunked encoding; denn mit diesem werden > > persistente Verbindungen einfach auch bei dynamischen Inhalt, bei dem > > die Gesamtlänge zu Beginn des Sendens der Daten noch nicht feststeht, > > möglich. > Hm... kannst du mir ein Beispiel für so eine Situation geben? Ganz einfach (und wieder on topic ;-) ) PHP. Wenn man ein PHP-Skript hat, was u.U. etwas länger braucht, will man eben nicht warten, bis erst der komplette Output auf dem Server erzeugt wird und dann das auf einmal zum Client schicken, sondern der Server kann ja schon beginnen, die Daten zu senden, obwohl das Skript noch am Arbeiten ist und damit die endgültige Größe der Ausgabe noch gar nicht feststeht. Wenn man nun kein chunked transfer encoding hätte, wären keine persistende Verbindungen zwischen HTTP-Client und -Server möglich; denn woher sollte der Client wissen, daß jetzt die Daten der ersten Datei anfangen und er einen neuen Request schicken kann, wenn es ihm nicht über chunked encoding oder einem Content-Length-Header vor den Daten gesagt wird. Da aber gerade diese persistenten Verbindungen den großen Vorteil bringen, daß für mehrere Anfragen (z.B. HTML-Datei und die zugehörigen Bilder) keine neue Socket-Verbindung zum Server aufgebaut werden muß, was mit einigem Overhead verbunden ist, lohnt sich das chunked encoding schon. Tschüs Stefan -- Stefan Röhrich stefan_(at)_roehri.ch, sr_(at)_linux.de http://www.roehri.ch/~sr/
php::bar PHP Wiki - Listenarchive