Philipp Hasenfratz: Browser-Refresh während Perl-Programm läuft

Beitrag lesen

Halihallo Martin

autoflush ($|=1;) alleine bringts nicht, Suchalgorithmus zu verbessern geht fast auch nicht mehr(habe bereits jetzt bis zu 50 URL-Requests in 10 Sekunden abgearbeitet; siehe http://www.ehandel.de/cgi-bin/schnapper.pl, was ich nicht im Griff habe, sind die Antwortzeiten der fremden Suchmaschinen, bzw die timesouts.

Nun, da lässt sich am Algorithmus nicht viel schrauben, da hast du recht.

Mir schwebt sowas vor wie bei http://www.suchen.com, wo man "zusehen" kann, wie er schafft und was eintrudelt...

Ich kann mir nur vorstellen, dass die ihren Webserver so konfiguriert haben, dass die
Packages (die Daten werden ja über Chunks mit gewisser Länge übertragen) klein sind und
sofort versendet werden. Ich wüsste jedoch nicht, wie man dies tun könnte.

Da ich keine weiteren "schönen" Vorschläge mehr habe, bleibt mir nur den Vorschlag zu
unterbreiten, dass du dir einer Weiterleitung behilfst. Die Suchabfrage mit den Childs
werden in einer Datei gepuffert, STDOUT wird jedoch gleich nach der Meldung
"bitte warten" geschlossen. Und wenn die Weiterleitung anspringt, wird die zuvor
generierte Datei ausgegeben (welche nun ja die Suchergebnisse enthält). Schön finde ich
dies zwar ebensowenig wie du wahrscheinlich, aber es ist im Moment das einzige, was mir
noch einfällt (ein eigener HTTP-Daemon der an Port 80 lauscht und die Daten ad-hoc aus-
gibt fällt wohl aus, nehme ich an?).

Das Problem ist schlicht dies, dass HTTP nicht dafür gedacht ist. In HTTP ist die
kleinste Sinneseinheit meinetwegen die Ressource und diese ist entweder übertragen oder
nicht. Teilstati gibt es _eigentlich_ nicht. Klar kann man es versuchen, klar gibt es
"Lösungen", aber alle sammt sind nicht im Sinne des HTTP. Aber ich glaube, das weisst
du bereits.

Viele Grüsse

Philipp

--
RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.