Shopware 5 - Wie du deine Shop Geschwindigkeit optimierst

Shopware 5 - Wie du deine Shop Geschwindigkeit optimierst

Ewald Gering 23. Februar 2017 11

Wie du die Geschwindigkeit deines Shopware 5 Shops schon mit ein paar kleinen Tricks verbessern kannst zeigen wir dir in diesem Beitrag.

Heute stellen wir dir 10 Möglichkeiten vor, um die Ladezeit deines Shopware Shops zu optimieren.

Wichtige Punkte die man bezüglich der Shopware Performance beachten muss

  1. Shopware Hosting
  2. Webserver Nginx
  3. PHP 7.x
  4. MySQL 5.6.x
  5. Bytecode-Cache
  6. Cache aktivieren
  7. Cache leeren (Cron)
  8. Cache aufwärmen (Cron)
  9. Sauberes Theme
  10. Theme Konfiguration

Shopware Hosting

Prinzipiell kann man mit den Shopware zertifizierten Hostern nicht viel falsch machen.

Diese kennen sich nicht nur in Sachen Hosting aus, sondern sind auch auf Shopware spezialisiert. Dadurch ist eine Fehlersuche meist einfacher durchzuführen und somit das Problem auch schneller zu lösen.

Dennoch gibt es spezielle Punkte die es bei den Server/Hosting Paketen zu beachten gibt. Folgende Software ist ideal für die Performance deines Online Shops.

Gerne kannst du auch auf unser Hosting zurückgreifen. Durch die Kooperation mit einem großen Hosting Partner können wir dir hier eine optimale Lösung anbieten.

Webserver Nginx

Der Webserver Nginx ist performanter als der allbekannte Apache Webserver, da dieser mehrere HTTP Requests in einem Thread abarbeiten kann.

Für dich bedeutet das, dass dein Shop mit der gleichen Hardware schneller arbeiten kann und dadurch mehr Traffic abarbeiten kann. Andersherum gesehen kannst du den gleichen Traffic mit weniger Hardware abarbeiten und damit Geld einsparen.

PHP 7.x

Die PHP Version "7" gibt es zwar schon länger, doch erst seit einigen Monaten in Verbindung mit dem IonCube Loader kompatibel. Dieser wird benötigt um verschlüsselte Plugins aus dem Store zu nutzen.

Im Vergleich mit PHP 5.0 ist PHP 7 ganze 14-mal schneller und mit PHP 5.6 verglichen immerhin doppelt so schnell.

Was musst du bei der Umstellung auf PHP 7 beachten?
1. Bei deinem Hoster nachfragen ob er PHP 7 unterstützt und den IonCube Loader aktiviert hat, bzw. wie du diesen aktivieren kannst.
2. Die bisherigen Plugins, die für PHP 5.x verschlüsselt wurden müssen neu aus dem Store heruntergeladen werden. Dazu gehört auch der Lizenz-Manager!

MySQL 5.6.x oder Maria DB

MySQL ist ein Datenbankverwaltungssystem. Es bearbeitet die Anfragen, die z.B. über PHP reinkommen und gibt entsprechende Werte an PHP zurück. Die neueste produktiv Version von MySQL beschleunigt also die Datenverarbeitung deines Servers.

MariaDB ist ein sogenanntes Fork (Abspaltung) von MySQL. Es ist einiges schneller als die MySQL Datenbank, was sich aber erst ab sehr großen Datenmengen bemerkbar macht.

Bytecode-Cache

bytecode-cache

Informationen welcher Cache aktiv ist, findest du unter "Perfomance > Einstellungen > Performance checks"
Die oben zu sehenden Caches kannst du bei deinem Server/Hosting Paket installieren/aktivieren.

Cache aktivieren

Du solltest für deinen Live Shop auf jeden Fall den HTTP Cache unter "Perfomance > Einstellungen > HTTP-Cache" aktivieren. Dazu gehört auch, dass der Shop unter Perfomance > Start" in den Produktivmodus gesetzt wird.

Cache leeren (Cron)

Den Cache kannst du über einen Cronjob automatisch leeren lassen.

Den zugehörigen Cronjob findest du in den Grundeinstellungen unter "System > Cronjobs" mit dem Namen "HTTP Cache löschen". Am besten eignet sich eine Zeit Nachts wie z.B. 3 Uhr. Manuell kann man den Cache auch über das Performance Modul leeren.

Cache aufwärmen (Cron)

Es gibt hier wieder die manuelle Möglichkeit über das Performance Modul "Perfomance > Einstellungen > HTTP-Cache" den Cache manuell aufzuwärmen. Aber wer möchte das gerne immer wieder per Hand machen und das am besten noch Nachts? Daher können wir hierfür auch einen eigenen Cronjob anlegen.

Wie legst du einen eigenen Cronjob an? Das Ganze wurde hier bereits erklärt. Der Befehl um den Cache aufzuwärmen lautet "php bin/console sw:warm:http:cache". Dieser sollte am besten ein paar Minuten nach dem leeren des Caches aufgerufen werden. In dem vorherigen Beispiel wird der Cache um 03:00 gelöscht, also soll der Cache um 03:05 wieder aufgewärmt werden.

Sauberes Theme

Die Geschwindigkeit des Frontends wird oft durch schlecht entwickelte Themes verlangsamt. Zu oft sehen wir Themes, die nicht richtig ableiten und somit werden die Dateien doppelt und dreifach geladen.

Dieser Prozess kostet Zeit, Zeit die wir, du und deine Kunden nicht haben. Also solltest du dich beim entwickeln immer an die Shopware/Smarty/Less Regeln halten. Mehr dazu findest du hier (Smarty) und hier (Less).

Theme Konfiguration

Deine Theme Konfiguration im Live Shop sollte auf jeden Fall folgende Optionen gesetzt haben.

theme-konfiguration

Das "Compiler Caching" muss auf jeden Fall aktiviert bleiben. Dies solltest du am besten nur deaktivieren wenn du an deinem Theme oder Plugin arbeitest.

Die CSS und JavaScript Dateien sollten komprimiert werden, damit der Shop diese als eine einzelne Datei cachen kann und der Browser des Nutzers im Frontend nur eine Datei laden muss.

Was genau haben wir nun optimiert?
1. Das Hosting Paket und die passende Software.
2. Der Cache wurde aktiviert und wird automatisch aktualisiert.
3. Das Theme ist sauber abgeleitet und komprimiert.

Mit diesen wenigen kleinen Anpassungen kannst du schon einiges an Geschwindigkeit für deinen Shop rausholen.

Hol dir unseren kostenlosen E-Mail-Kurs:

Lerne wie du deinen eigenen Shopware 5 
Shop erstellst und verwaltest

11 Kommentare

  • Hallo,

    wo wird denn der Befehl um den Cache aufzuwärmen "php bin/console sw:warm:http:cache" eingetragen? Im Backend des Shops gebe ich ja die Aktion des CronJobs ein, und nicht den Befehl direkt.
  • Hey Dirk,

    das hängt von dem Hosting ab. Du musst den Befehl in einem extra Cronjob in deinem Hosting-Paket anlegen.

    Am besten fragst du direkt bei deinem Hoster nach wie du einen eigenen Cronjob erstellen kannst.

    Viele Grüße
    Ewald
  • Gut wären ein paar Infos zu APCu und Zend OPcache. Da steht, dass man das beim Hoster aktivieren kann. Allerdings bietet nicht jeder Hoster diese Möglichkeiten.
  • Vielen Dank! Normalerweise sollte das bei allen Shopware zertifizierten Hostern möglich sein. Bei anderen Hostern sollte da am besten nachgefragt werden. Leider kann es vorkommen, dass einige Webhostings zu eingeschränkt sind. Daher empfehlen wir immer einen zertifizierten Shopware Hoster zu nehmen. Aber es lohnt sich bei seinem Anbieter nachzufragen. Seit PHP 7.0 kann der PHP OpCache auch in Dateien ausgelagert werden und somit auch beim Shared Hosting genutzt werden.
  • Hallo Ewald,

    Gleich einmal vorweg, ich bin ganz neu im Thema und war auf der Suche nach Infos zu PHP7 und OPcache im eCommerce.
    In einem anderen Artikel über optimierte Ladezeiten (https://www.onlinesolutionsgroup.de/blog/ladezeiten-optimieren/) habe ich gelesen, dass man unbedingt Weiterleitungesschleifen durch falsch gesetzte Canonicals vermeiden sollte. Daher meine Frage: Kann man in Shopware überhaupt welche setzen?

    Viele Grüße,
    Sören
  • Hey Sören,

    standardmäßig springt Shopware bei Nichteingabe des "/" auf die Startseite oder eine eingerichtete 404 Seite. Denke das Problem mit der Schleife ist somit nicht gegeben.

    LG
    Marc
  • Hallo Ewald,
    vielen Dank für die Infos.
    Ich habe noch eine Frage zum Cache aufwärmen:
    Wenn ich mehrere Sprachshops habe, benötige ich dann für jeden einen anderen Befehl?

    viele Grüße
    Jürgen
  • Hallo Jürgen,

    du kannst seit der Shopware Version 5.2.19 einzelne Shops ansprechen. Wenn du allerdings von allen Shops den Cache aufwärmen lassen willst, reicht es den Befehl wie oben einzugeben.

    Viele Grüße
    Ewald
  • Hallo Ewald,
    vielen dank für die Info. Diese Information kann man bei Shopware immer gebrauchen. Schließlich frist der Shop die Resourcen....

    gruss aus Berlin
    :) Winny
  • Hallo Winfried,

    freut mich, dass ich helfen kann :)

    Viele Grüße
    Ewald

Was denkst du?

8mylez Community

SHOPWARE

FORUM

shopware tutorial ebook mockup

Werde Teil einer einzigartigen Wissensdatenbank!

Zum 8mylez Shopware Forum

Das Shopware eBook für Einsteiger!

shopware tutorial ebook mockup
Ausführliche Schritt für Schritt Anleitungen, Tipps & Tricks für alle, die gerne am eigenen Shopware Shop basteln.
Jetzt kaufen

Hol dir 

wertvolle Tipps 
für deinen
Shopware Shop

Wir zeigen dir, wie du deinen
Shopware 5 Shop optimieren
kannst.


Trage einfach deine
E-Mail Adresse ein:

Beliebt

Was du über die Shopware 5 Theme Struktur wissen musst und wie du ein eigenes Template erstellst
Theme: Eigenes Listing Layout erstellen
Logo Größe anpassen mit Less für Shopware 5
4 Gründe warum du Shopware 5 lokal mit MAMP installieren solltest und wie du das anstellst
Vorsicht Shopware Update! Was du beim Updaten beachten musst
Staging Umgebung – Was ist das und warum brauchst du eine?
Wie du jedes Icon in Shopware 5 anpassen kannst
Shopware Logo aus dem Footer entfernen
Shopware 5 - Wie du deine Shop Geschwindigkeit optimierst
Wie Cronjobs bei Shopware funktionieren und wie du sie richtig einstellst
© 2017 by 8mylez. Powered by Goltfisch GmbH.