Jörg Reinholz: Nochmals feeds lesen

Beitrag lesen

Das verstehe ich, aber noch mal die Frage:
Dann müsste ja aber das ERSTE Aufrufen der Seite z. B. am Morgen oder wenn die Seite länger nicht aufgerufen wurde, trotzdem genauso lange dauern wie bisher, weil die cachetime ja auf jeden Fall überschritten wurde (also wieder Ladezeit zu lang - memory timeout!) Oder habe ich da was übersehen? oder falsch verstanden...

Erstmal: Nein. Beim allerersten Aufruf gibt es im Fehlerfall bei mir lediglich ein leeres Sniplet, also keine Inhalte aus dem Feed, dessen Abruf nicht geklappt hat. Bei jedem späteren misslungenem Versuch den früheren Zustand. Das von mir gesetzte Zeitlimit ist die Zeit, in der gar nicht erst versucht wird den Server nach dem aktuellen Feed zu fragen (Noch nicht mal eine Header-Anfrage wird da gemacht).

Was meinst nun:  Memory Limit überschritten oder Timeout?
Wenn Timeout:

Timeout beim Abholen?
Timeout beim selbst Aussenden?

Klar, wenn Du 50 Feeds abholst, von denen 10 je eine Minute brauchen, dann brauchst Du schon deshalb 10 Minuten für das Erstellen Deiner Seite... jedenfalls so lange Du Dir nichts einfallen lässt um das Abholen zu parallelisieren. Das geht mit einem kleinen Trick sehr wohl.

Wenn das Abrufen der Feeds also dauernd in Timeouts endet, dann musst Du Dir in paar Gedanken mehr machen. Du kannst die Feeds tatsächlich von einem Cronjob abholen und damit im Hintergrund einen eigenen Cache füttern lassen. Bedenke aber was die Betreiber der Server dazu sagen werden wenn aller paar Sekunden bei denen ein Request aufschlägt und die dann merken, dass der vorsorglich erfolgt, also deren Server (aus deren Sicht: sinnlos) belastet wird, nämlich ohne dass hierbei ein Request eines Browsers bedient wird.

Gerade die, deren Antwortzeiten länger dauern, werden wohl diese unnütze Last loswerden wollen und mit einem kleinen Eintrag in der .htaccess sind die Dich los.

Kaum zu erreichen ist, dass die mich (oder einen anderen) anrufen, damit ich (oder der andere) deren CMS so umstricke dass der Feed (wie auch die sitmap) "quasistatisch" bereit gestellt und ggf. auch gekürzt wird. Ja. Ich habe sogar schon Volltext-Feeds gesehen, die zeitlich "bis an die Anfänge des Internets" zurück reichten und dann auch noch durch Datenbankabfragen erzeugt wurden.

Über die sonstige Umgebung wissen wir nichts. Wenn Du ein lokales Netzwerk hast, dann kann man natürlich die Feeds auch via einen Webcache wie dem Proxyserver Squid abholen und browserseitig mit JS verarbeiten. Letzteres wirst Du wohl mit "Ajax" meinen. Wobei ich mich dann frage, warum nicht gleich einer der gängigen Feedreader genommen wird statt das Rad selbst neu zu erfinden.

Jörg Reinholz