[TYPO3-german] Aspekte für Benchmark
Peter Linzenkirchner
liste at lisardo.de
Mon Aug 18 18:29:25 CEST 2014
Hallo Dieter,
ja, das bringt es gut auf den Punkt: es hängt ganz wesentlich von den Zielsetzungen ab. In manchen Fällen funktioniert das klassische Caching-System von TYPO3-Extensions nicht.
Das ist zum Beispiel der Fall, wenn nicht viele Besucher auf wenige Seiten zugreifen, sondern wenige Besucher auf viele verschiedene Seiten. Die meisten Seiten werden nur einmal aufgerufen und sind deshalb nicht im Cache. Und können auch nicht im Cache gehalten werden.
Ich bin von diesem Ansatz ausgegangen: jemand landet über Google auf einer Produktseite, die noch niemand aufgerufen hat (bei 12.000 Produktseiten ziemlich wahrscheinlich) und die sich deshalb nicht im Cache befindet. Danach flottes Blättern, Filtern, Suchen - die Leute sollen so lange wie möglich bleiben. Dabei sind selten mehr als 10-15 Besucher gleichzeitig in der Site.
Ziel 1: Erstaufruf so schnell wie möglich.
Das geht, wenn sich das Seitengerüst, TYPO3 selbst, das Menü und vor allem die Kategorien bereits im Cache befinden, und wenn die Extension als USER_INT läuft.
Das geht nicht, wenn ich versuche alle Seiten komplett zu cachen: dann ist es nämlich sehr wahrscheinlich, dass sich die aktuell aufgerufene Seite gerade nicht im Cache befindet, und TYPO3 bis zu 6 oder 8 Sekunden braucht, um die Seite in den Cache zu schreiben (dabei ist es ziemlich egal, ob in die Datenbank oder in einen Filecache). Es ist unmöglich Tausende von Produktseiten sowie Listen mit Dutzenden von Parameter-Kombinationen im Cache zu halten, nicht mal über einen Cronjob. (Nach meiner Rechnung wären das über 40 GB in den Cachetabellen - keine Ahnung, ob das überhaupt geht).
Ziel 2: Nach dem Erstaufruf sollte das Blättern möglichst performant sein.
Hier gilt das gleiche: es geht einigermaßen, wenn ich die Extension als USER_INT einbinde. Wenn ich die ganze Seite cachen lasse, wird es immer wieder Seiten geben, die noch niemand aufgerufen hat, und die deshalb nicht im Cache sind, und die wieder endlos brauchen, bis der Cache weggeschrieben ist.
Für so eine Anwendung ist es nicht sinnvoll, alle Seiten komplett zu cachen. Das Ziel sieht aktuell so aus:
- das Seitengerüst cacht beim ersten Aufruf des ersten Besuchers (ist praktisch immer im Cache)
- alles andere cacht in der Extension selbst:
- - Caching der Produkt- und Kategorien-Menüs über das Caching-Framework in der Extension selbst
- - Caching der Single-Darstellung, auch über das Caching-Framework (damit sich das Seitengerüst trotzdem immer im Cache befindet - das geht nur so, nicht über das traditionelle Caching von kompletten Seiten)
- alles andere (Listen, Filter) cacht gar nicht bzw. funktioniert so weit als möglich über JavaScript und Cookies.
Danach wird am Server optimiert; hier könnte Benchmarking dann interessant werden.
Gruß
Peter
Am 18.08.2014 um 17:20 schrieb Dr Dieter Porth <typo3 at mobger.de>:
> Am 18.8.2014 13:57, schrieb David Bruchmann:
>>
>> 2) Hat Jemand evtl. Test-Datenbank(en) um einige Scenarions
>> durchzuspielen?
> Der Thread bzw. die Frage ist interessant.
> Welches Ziel verfolgst du mit deinen Benchmarks? - Das ist leider nicht
> deutlich geworden.
>
> Willst du eine spezielle Website optimieren oder willst du einen Server
> für viele Webseiten mit TYPO3 optimieren oder möchtest du vielleicht
> mehr Usablility für eine bisher vielleicht langsame Website haben?
> Je nach Frage ergeben sich , wie schon von den anderen gesagt,
> unterschiedliche Herangehensweisen.
>
> Im individuellen Fall würde ich mir User überlegen, und die wichtigen
> Seiten heraussuchen, um ausgehend von diesen die Analyse zu beginnen.
> (Hier bieten sich verschiedene Möglichkeiten an, wie man die wichtigsten
> Seiten bestimmen kann.)
> Im Massenfall würde ich vielleicht per Google häufig besuchte
> TYPO3-Seiten suchen und daraus eine Testumgebung konzipieren.
> Im Usability-Fall für eine langsame Website führen dich die
> Benchmarks-Test vielleicht sogar in die Irre, denn Benchmark
> hinterfragen die Geschwindigkeit einer Aufsetzung und verhindern damit
> ein Stückweit das Nachdenken über konzeptionelle Alternativen.
>
> Dieter
> .
>
> P.S. Wer die falschen Fragen stellt, erhält sicher immer Folgendes:
> falsche Antworten.
>
> --
> Dr. Dieter Porth -
> Mein kleines TYPO3-Labor: http://www.mobger.de/
>
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
--
Xing: http://www.xing.com/profile/Peter_Linzenkirchner
Web: http://www.typo3-lisardo.de
Facebook: http://tinyurl.com/lisardo-multimedia
More information about the TYPO3-german
mailing list