Cache Einstellungen & schlechte Seitenperformance

Hallo Leute, ich komme etwas mit dem Cache nicht klar, ich will shopware ein wenig “tunen” da es doch recht träge ist beim Seitenaufbau etc. Ich habe einige Tests hierfür benutzt wie: PageSpeed Insights von Google: 63/100 Vorallem wird der Cache sowie Bildergrößen streng bemängelt, eher weniger streng dagegen aber auch vorhanden Bilder in CSS Stripes kombinieren, sowie “skallierte Bilder bereitstellen”. Das sind wohl die wichtigsten “Bremser”. EDIT: Mir ist noch aufgefallen dass laut Critical Path Explorer als erstes die Bilder und dann erst die Tempates Daten wie CSS etc. geladen werden, habe hierzu aber einen zusätzlichen Thread eröffnet, da ich mir nicht sicher bin ob das hier passt, vllt. eher zum Template… Mit den Bildern komme ich noch klar, ich brauche dieser in Hoher qualität, andernfalls werde ich dort noch ein wenig rumoptimieren oder zumindest auf der Startseite reduzieren, keine Ahnung mal gucken. Dagegen habe ich kein Plan was ich mit CSS Stripes anfangen soll. So ich habe das Plugin Frontendcache aktiviert, aber angeblich wird nicht gecached, was kann ich hier machen um das Caching problem zu lösen? Seitenreport.de Bemängelt bei mir zum einen: - Datentrasfer von 2,4Mb - Anzahl Requests von 72 - Antwortzeit von 618ms Kann mir hier jemand weiterhelfen und erklären was ich mit dem Cache besser machen kann oder Request/Datentransfer sowie Anzahl Request und Antwortzeit reduzieren kann? Plugins sind soweit nur die mitgelieferten aktiviert. Hoffe jemand hat noch paar gesunde Tipps für eine bessere Ladezeit meiner HP. MfG

Hi SKB, um den Frontendcache zu nutzen sind noch weitere Einstellungen notwendig, in unserer Wiki findest du dazu folgenden Beitrag: http://wiki.shopware.de/Shopware-4-Http-Proxy-Cache-und-Varnish_detail_817.html. Es kann mehrere Ursachen für eine schlechte Performance des Shops haben, in erster Linie sollte einmal der Hostserver überprüft werden ob dieser genug Leistung abgibt. mfg Dennis

Danke für die Antwort. Werde mir den verlinkten Beitrag in Ruhe daheim dann Abends durchlesen. Bezüglich Serverperformance, was müsste ich bei meinem Provider Anfragen damit ich herausfinden kann ob das nun eher am Server liegt? Früher hatte ich mal eine Frage zur Performance gestellt, da hatte der Provider mir erklärt dass FastCGI auf dem Server läuft. Falls die Information nützlich sein sollte ^^

Hi SKB, die Performance ist von mehreren Faktoren abhängig. Einmal muss geguckt werden wir groß der eigene Shop ist (Artikel, Kategorien etc.) sowie auch die Tägliche Besucherzahl. Für die normale Performance ist es wichtig das die CPU genügend Ressourcen zur Verfügung stellt, dass es hier nicht zu Engpässen kommen kann. Auch sollte auf den Arbeitsspeicher geachtet werden. Genaue Richtwerte kann man hier nicht nennen. Achte auch bei deinem Memory Limit das dies hoch gesetzt ist alle angaben die im Backend erscheinen unter Einstellungen --> Systeminfo sind Mindestanforderungen. In der Regel gibt es kaum Performance Einbussen wenn FastCGI richtig konfiguriert ist. Wie FastCGI richtig konfiguriert wird kann ich leider nicht beurteilen.

@Request-Anzahl: Die Anzahl der Serverzugriffe soll reduziert werden, weil dies bei einem lansgamen/ausgelasteten Server/Hosting-Paket natürlich Zeit in Anspruch nimmt. Wieviel Zeit man einsparen kann, muss man vorab durch ein Profiling des Netzverkehrs testen. Bei Shopware böte sich an, die CSS- und/oder Javascript-Dateien zu kombinieren und einige der Hintergrundbilder zu Sprites zu kombinieren. Beides erfordert einige zeitaufwändigere Eingriffe. Es lassen sich auch einige Hintergrundbilder einsparen, indem man von der „alten“ Button-Technik mit Grafiken auf moderne CSS-Techniken wechselt. Funktionieren tut aber beides und nicht alles lässt sich ohne Hintergrundgrafik problemlos realisieren @Ladereihenfolge Die Ladereihenfolge von CSS und Javascript ist einfacher zu ändern, da dies in den Templatedateien leicht modifizierbar ist. @CSS-Stripes: Man kombiniert mehrere Hintergrundbilder zu einer Grafik und positioniert diese dann per CSS so, dass nur ein Teil sichtbar ist. Dadurch muss nur eine Datei vom Server geladen werden und das geht schneller. Die Tatsache, dass die Grafikdatei dann größer ist, fällt nicht ins Gewicht. @Skalierte Bilder / Dimension zu Bildern angeben. Bilder sollten immer in der Größe bereitgestellt werden, die im Browser verwendet wird. Ansonsten muss der Browser das während des Ladens umrechnen und das kostet Zeit. Jedem Bild sollte im HTML-Source-Code die Breite und Höhe explizit zugewiesen werden. Das spart Zeit während des Bildaufbaus (Rendern) im Browser. Wahrscheinlich ist die innerhalb des Sliders nicht der Fall. Im Prinzip baut jeder Browser zuerst ein Grundgerüst mit Platzhaltern. Danach geht er durch die Platzhalter und fügt den Inhalt ein. Erkennt der Browser, dass er nur z. B. 50px Breite für den Platzhalter eingeplant hatte, jetzt aber ein Bild mit 100px Breite da hinein soll, dann muss er die Breite des Platzhalters ändern. Vielleicht wirkt sich dies dann noch auf die Breite anderer Platzhalter aus und er muss diese auch noch anpassen. Unter Umständen kann man dann den „Seitenaufbau“ im Browser bewundern. Fazit: Wenn jedoch viele sehr große Bilder geladen werden, dann sind alle oben genannten Faktoren eigentlich nicht mehr relevant und gigantische Zeiteinsparungen kann man damit auch nicht erwarten. Ein schwächliches Hosting-Pakte kann man damit auch nicht kompensieren! Was sagt denn das Profiling mit FirePHP?