Zum Inhalt springen

[AJAX] welche Serverlast durch eID

Erstellt am 23. April 2008 · 2 Antworten · letzte Antwort am 23. April 2008

Tags: Frage

clownfish ·

Hi Forum,
ich arbeite zurzeit an einer Online-Bilderverwaltung und bastle eine Extension, die Thumbnails und die Bilder aus ausgewählten Galerien anzeigt.
Dabei wird eine Liste von Thumbnails angezeigt und, wie in einer Galerie üblich, ein Bild im Großformat.
Das Großformatbild wird mitsamt Kommentar und einigen Metadaten durch Klick aufs Thumbnail geladen, das soll per AJAX geschehen.

Die Frage dazu: Wieviel Serverlast erzeugt die Realisierung einer AJAX-Anwendung durch eID?
Im PHP-Script das von AJAX aufgerufen wird, gibts einige wenige Datenbanktransaktionen: laden der Metadaten und schreiben von Aufrufstatistiken.

Durch eID wird der Tanz den TYPO3 bis zur Ausgabe tanzt recht früh abgebrochen, aber in einer Bildergalerie kanns ja doch innerhalb von einigen Sekunden zu mehreren Aufrufen kommen. Wenn jemand eine Galerie mit 30 Bildern in zwei Minuten durchklickt ist das ein Aufruf alle vier Sekunden. Mir fehlen die Mittel und Kenntnisse um die wirkliche Serverlast zu messen.
Gibts hier Erfahrungen oder Erkenntnisse?

Die Alternative zu eID wäre ein externes Script, das selbstständig zur Datenbank verbindet und die wenigen Operationen durchführt. Das wäre kein sauberer Weg und die Datenbankverbindung müsste für jede Installation manuell im Script angepasst werden.
Ich möchte den (Shared-)Server aber auch nicht bei jedem Surfer in die Knie zwingen, nur um einen Weg zu gehen, der nicht über den Rübenacker führt.
Würde der Performance-Unterschied ein solches externes Script, das TYPO3 nichtmal streift, rechtfertigen?

Viele Dank!
Cheers, clownfish

just2b ·

Hallo,

verwendest du so dinge die cObj->IMAGE? sonst ist die last eigentlich so hoch wie du sie programmierst

georg

clownfish ·

Nein, im Prinzip gehts nur um zwei Datenbanktransaktionen:

'SELECT comment, filename, count, data1, data2 [...] * FROM pictures WHERE id='.picID
'UPDATE pictures SET count='.count + 1.' WHERE id='.picID

Das ist stark vereinfacht, vor allem die erste SQL-Abfrage ist mit allen Optionen, JOINs um einiges länger - aber das ist ohnehin Sache von MySQL und ist unabhängig von der TYPO3/eID Last. Die Infos aus der Datenbank werden klarerweise noch ausgegeben.
Im Prinzip wäre der einzige Unterschied in der Programmierung, dass sich TYPO3 um die Datenbankverbindung und -abfragen kümmert.

Dann führt der Weg also über eID, vielen Dank!