Sven Rautenberg: Server Push

Beitrag lesen

Moin!

woher kommt dann bei einigen metasuchmaschinen der effekt, das ohne "flackern", also scheinbar ohne neuladen der seite erst der hinweis auf die laufende suche und dann in zeitlichen abständen anstattdessen die einzelnen ergebnisse eintrudeln?

Da werden die Ergebnisse nacheinander schon mal zum Browser geschickt, die Seite ist aber noch nicht fertig und die Verbindung wird nicht beendet.

Diesen Effekt kann dir jederzeit ein beliebiger, cachender Proxy auf der Strecke von Browser zu Server kaputtmachen. Es ist nichts, auf das man sich verlassen kann.

und wie funktioniert dann phpirc?

Schlecht, würde ich sagen. :)

wenn der blaue ladebalken im ie nicht zum ende kommt und das wörtchen "fertig" unten links nicht erscheint, dann wird doch scheinbar die verbindung aufrecht erhalten, oder?

Das ist aber nicht wirklich Sinn der Sache. Der Prozess auf dem Server, der die Verbindung offenhält, muß dazu ewig weiterlaufen. Das kann vom Serverbetreiber aber eingeschränkt werden. PHP-Skripte laufen beispielsweise nur begrenzt, z.B. 30 Sekunden. Das ist sinnvoll, falls ein Skript mal eine Endlosschleife ausführt.

Ein weiterer Nachteil dieser Taktik: Man kann nur unten an die Seite was anfügen. Natürlich kann man versuchen, mit viel Aufwand und Javascript sowie Frames das für den Benutzer anders aussehen zu lassen, aber Tatsache ist einfach, dass HTTP kein Server-Push-Protokoll ist, sondern ein Client-Pull-Protokoll. Alle Versuche, das server- wie clientseitig umzubiegen, sind grausam, schrecklich und wider die Natur von HTTP. Man sollte es lassen.

- Sven Rautenberg

--
ss:) zu:) ls:[ fo:} de:] va:) ch:] sh:) n4:# rl:| br:< js:| ie:( fl:( mo:|