Was genau passiert beim "aufwärmen" des cache und was darf ich davon erwarten?

Ja Hallo :slight_smile:

Die Überschrift sagts ja schon, ich bin mir unschlüssig was ich davon erwarten darf.

Ausgangssituation:

Shop mit ca. 300tsd Artikeln und 3000 Kategorien, die automatisiert eingelesen wurden.

Cache baut sich ja nach und nach dann automatisch auf wenn man draufklickt auf die jeweiligen Kategorien zB, aber das dauert mir doch einfach alles zu lange dann, der Shop wirkt nicht performant, es dauert halt der Seitenaufruf. Beim nochmaligen Klick auf dieselbe Kategorie ist diese dann sofort da, das ist schon klasse dann. Wenn ich aber eine andere Kategorie anklicke dasselbe Elend, lange Wartezeit mehrerer Sekunden…

Nun experimentiere ich mit cache aufwärmen über CLI Befehle. Aktuell habe ich das Live System bei Hosteurope und eines zum experimentieren bei netcup

Bei HE ist es so, dass das System keinerlei anderes Verhalten zeigt wenn ich den cache der KATEGORIEN über die Shell aufgewärmt habe. Komischerweise arbeitet das System besser, je höher die Zahl der konkurrierenden Requests ist (–concurrent-requests). Ist die bei zB 10 oder so, dann krieg ich einen Abbruch, ist die bei 3000, dann geht er scheinbar durch. Aber es zeigt sich dann im Frontend des Shops kein anderes schnelleres Verhalten. Bei Netcup bin ich noch nicht soweit, da hab ich den shop eben erst zum laufen gebracht.

Ich habe das mit dem Aufwärmen so verstanden, dass der Cache aufgebaut wird. Dann sollte doch der Seitenaufbau der Kategorien eigentlich blitzschnell sein, auch beim Erstaufruf. Ist es aber nicht. Ich habe deshalb die Vermutung, dass der Cache nicht aufgebaut wird. Aber das sollte er doch oder ist meine Erwartungshaltung falsch?

Was genau passiert da eigentlich? Im Logfile hab ich irgendwo etwas von curl gelesen, also ruft der CLI Befehl die Pages einfach auch nur auf? Das würde mir dann einen ersten Ansatzpunkt geben, warum bei HE der Shop so schnell komplett in die Knie geht in der Shell, “2006 Mysql gone away”

Meine Idee ist es, dass ich Nachts den Kategorien Cache neu aufbaue, das würde schon richtig viel Performance bringen.

Ich würde mich sehr über Meinungen und Ideen anderer Entwickler freuen.

Danke vielmals

Grüße

Markus

Der Cache-Warmer ruft jede Seite einfach auf per CURL, so als ob man das mit einem Browser machen würde.

Bei 300.000 Artikeln macht das Aufwärmen der Artikel allgemein nicht viel Sinn, da der Cache Warmer nicht so schnell läuft, dass sich das lohnen würde. Per Standard hast du im Performance-Modul definiert, wie lange eine Detailseite im Cache lieht - das ist eine Stunde im Standard. Wenn der jetzt bspw. Nachts läuft und morgens der erste User auf den Shop kommt, ist der Cache schon nicht mehr “warm”. Man muss das von Situation zu Situation entscheiden, wann man das braucht und für welche Inhalte. Einfach “alles” aufwärmen empfiehlt sich eigentlich nur bei Shops mit sehr wenigen Seiten und sehr vielen Besuchern. Wenn man viele wechselnde Inhalte hat, braucht man fast garnicht wärmen, da der Cache schnell wieder veraltet ist.

Würde daher bei einem solchen Setup nur die Kategorien aufwärmen und da die Cache-Zeit hochstellen.

1 „Gefällt mir“

@Moritz Naczenski schrieb:

 

Würde daher bei einem solchen Setup nur die Kategorien aufwärmen und da die Cache-Zeit hochstellen.

Genau so hatte ich mir das auch schon gedacht. Das System ist auch bei den Artikeln recht fix beim Aufruf, nur die Kategorien sind recht langsam. Nach dem Kategorien Cache aufwärmen ist das deutlich besser. Da würd ich dann das so machen wie empfohlen, das hilft.

Danke vielmals

Grüße

Markus