Magento Cache verständlich erklärt: Die unsichtbare Turbo-Ebene für Ihren Onlineshop
Einleitung - Wenn jede Sekunden Umsatz kostet
Im Onlinehandel gilt, dass "Tempo verkauft". Zahlreiche Studien zeigen, dass schon eine Sekunde längere Ladezeit messbare Umsatzeinbußen bedeutet. Kunden springen ab, Warenkörbe bleiben leer und Suchmaschinen werten langsame Shops ab (im Vergleich zu schnelleren Shops).
Magento ist eines der leistungsfähigsten, aber auch komplexesten Shop-Plattformen weltweit. Ohne ein durchdachtes Caching läuft das System wie ein Sportwagen mit Handbremse. Der "Magento Cache" wird oft missverstanden. Die kompletten Basics sind, dass "Cache" schlicht ein "Zwischenspeicher" ist. Es wird etwas zwischengespeichert, sodass es nicht mühsam jedes Mal neu errechnet werden muss sondern nur abgerufen werden muss. Das ist die Basis von "Cache".
Manche denken, dass der Cache nur der Knopf im Admin-Bereich wäre oder ausschließlich der "Full Page Cache" innerhalb von Magento. Tatsächlich ist es viel umfassender was es an Cache im Bereich Magento gibt und beachtet werden sollte.
In diesem Beitrag möchte ich einmal näher beleuchten was es an Cache gibt. Sie erfahren hier welche Arten von Caches es im Magento Umfeld gibt und wie diese zusammenspielen. Dazu noch einige praktische Hinweis wozu und warum man was einsetzt.
Was bedeutet "Magento Cache"

Streng genommen bezeichnet der Begriff "Magento Cache" die interne Zwischenspeicherung innerhalb der Shopsoftware selbst. In der Praxis aber wird er viel weiter gefasst normalerweise und nur von Magento Experten wirklich für genau diesen Cache verwendet.
In der Praxis bzw. "Alltagssprache" ist damit meist alles gemeint was im Zusammenhang mit einem Magento-Shop gecached wird. Das bedeutet vom Browser des Kunden, über evtl. ein Content Delivery Network (CDN) bis hin zum Server und zur Datenbank.
Wichtig ist hier: Diese Caches existieren nicht isoliert. Sie bilden ein Art Schichtensystem. Je besser diese Schichten ineinandergreifen, desto schneller, stabiler und effizienter arbeitet der Shop. Genauso ist aber auch Cache laufend eine Fehlerquelle. "Es ist kein Bug, nur Cache" wird sicherlich jeder im Magento Umfeld kennen.
Die Cache-Landkarte: 5 Ebenen, die zusammenspielen
Vom Kunden-Browser bis tief ins Rechenzentrum können an verschiedenen Stellen Informationen zwischengespeichert werden. Jede Ebene hat eine andere Rollen.
1. Browser Cache (Client Seite)
Der Browser Cache ist ein Cache, den viele Magento Neulinge überhaupt nicht auf dem Schirm haben. Es wird jedoch direkt im Browser und somit auf Kundenseite verschiedene Dinge gespeichert. Dazu zählen eben nicht nur Cookies sondern Bilder, CSS-Dateien, Javascript, Schriften und andere eher statische Inhalte, die sich selten ändern.
Dieser Zwischenspeicher ist super wichtig damit vor allem wiederkehrende Besucher nicht bei jeden Dateiaufruf alles neu laden müssen. Es spart somit Zeit und auch Bandbreite. Die Dateien sind schlicht bereits im Browser und müssen nicht aus dem Internet geladen werden was wiederum Bandbreite und letztlich Zeit spart.
Das Risiko bei diesem Cache ist, dass der Browser beim Kunden eine alte Version lädt obwohl "online" eigentlich schlicht eine andere verwendet wird. Dies passiert, bei nicht korrekter Versionierung der Dateien.
Über Angaben im Code kann gesteuert werden welche Objekte im Browser-Cache landen sollen und wie lange dies gespeichert werden sollen.

Beispiel für den Browser Cache:
Mit wiederkehrende Besucher ist damit jeder weitere Aufruf einer URL im Shop gemeint. z.B. ein User landet auf einer Produktseite und klickt dann auf eine Kategorie oder auch die Startseite. Das Shop-Logo ist im Browser-Cache des Kunden und auch die Produktfotos üblicherweise. Aber auch die evtl. besondere Schrift des Shops oder Hintergrundgrafiken. Diese sind somit "sofort" im Browser vorhanden ohne jegliche Ladezeit. Das Risiko ist aber, wenn z.B. ein Banner geändert wird und dieser den identischen Dateinamen hat, dann sieht der Kunde im Browser schlicht den alten Banner. Problematischer ist es wenn Javascript geändert wurde und der Kunde erhält z.B. weiterhin eine defekte Version oder ähnliches.
2. CDN-Cache (Content Delivery Network)
Der Content Delivery Network Cache ist nicht standardmäßig aktiv. Es ist etwas was aktiv eingerichtet werden muss zusammen mit entsprechenden Anbietern. Die gespeicherten Daten liegen z.B. bei Cloudflare, Akamai oder Fastly. Das sind Anbieter, die weltweit verteilt Server vorhalten um diese Daten zwischenzuspeichern
Es werden auch dort eher statische Dateien normalerweise gespeichert. Das sind vorallem größere Dateien wie Bilder, Videos, CSS/JS-Dateien. Es gibt aber auch Anbieter die komplette HTML Seiten zwischenspeichern können.
Ein CDN Cache ist wichtig, weil dieser nochmal die Inhalte näher zum Kunden bringt. Ein Kunde aus den USA muss somit nicht Daten aus Deutschland laden. Dazu bietet ein CDN Anbieter auch oft zusätzlichen Schutz vor Lastspitzen oder auch Angriffen (DDOS).
Das Risiko ist ähnlich wie beim Browser Cache, dass ein Kunde womöglich schlicht veraltete Inhalte ausgespielt bekommt oder sogar komplett falsche Inhalte.

Beispiel bzw. Analogie von CDN: Es ist vergleichbar mit einem Netz aus Filallagern. Die Produkte (Ihr Onlineshop) muss somit nicht jedes Mal aus dem Hauptlager geliefert werden, sondern ist auch in den Außenlagern vorhanden. Es ist somit viel näher am Kunden und spart entsprechend Zeit.
Gleichzeitig muss aber eben sichergestellt sein, dass wenn ein Produkt nicht mehr verkauft werden soll, das logischerweise in allen Lagern nicht mehr erhältlich ist. Gleichzeitig muss sichergestellt sein, dass Preisänderungen, Änderungen an Grafiken usw. sofort überall greifen.
3. Reverse-Proxy-Cache (z. B. Varnish)
Bei diesem Cache handelt es sich um einen Cache der auf Serverebene direkt mit der Magento Anwendung selbst zusammenarbeitet. Dieser wird von Magento Hostern üblicherweise direkt mit zur Verfügung gestellt. Er muss eingerichtet werden und kann dann genutzt werden.
Dieser speichert üblicherweise den Full Page Cache und somit komplette HTML Seite. Es wird somit eine komplette HTML-Seite aus dem Cache geliefert.
Dies ist wichtig, da somit nicht jedes Mal die kompletten Inhalte einer URL im Shop zusammengebaut werden müssen. Es muss nicht jedes Mal bei Aufruf eines Produktes, Kategorie, Startseite usw. der komplette PHP Ablauf durchlaufen werden wo das Template, Design, Daten usw. verknüpft werden. Die komplette Seite (Full Page Cache) liegt eben als fertige HTML-Seite im Cache und muss nur ausgeliefert werden.
Das Risiko ist, dass hier Dinge gecached werden, die überhaupt nicht im Cache sein sollen. Dazu zählen Dinge wie Warenkörbe oder Antworten basierend auf Funktionen. Dieses sind Dinge, die individuell je Besucher/Aufruf generiert werden müssen und natürlich nicht im Cache vorgehalten werden können.
Beispiele für den Varnish Cache:
Ein Kunde der auf die Startseite klickt. Ohne diesen Full Page Cache müsste nun die Anwendung loslaufen und ermitteln wie die Startseite aussieht... Oben der Header mit welchen Inhalten? Wie sehen diese aus. Dann kommt ein Sliderbereich. Was für Slides sind enthalten? welche Texte auf den Bildern? Welche Links wohin usw? Dann kommt ein Produktkarusell... Dann womöglich Kacheln. Das ganze müsste für jeden Besucher bei jedem Aufruf von null generiert werden. Wenn der Fullpage Cache aktiv ist entfällt dies alles. Es liegt sofort eine HTML Datei vor und nur der "Login Status" und andere marginale Dinge müssen erzeugt werden.
4. "Magento Cache" - Magento-interner Cache (Applikationsebene)
Bei diesem Cache handelt es sich um den fachlich korrekten "Magento Cache". Es ist der Zwischenspeicher, der über die Magento Applikation selbst gesteuert wird. Das kann über den Admin-Bereich oder die Komando-Zeile(CLI) erfolgen. Dieser ist normalerweise immer aktiv und nur auf Entwicklungssystem oft deaktiviert.
Es werden dort verschiedensten Dinge gecached. Das sind Konfigurationen wie Systemeinstellungen oder Einstellungen in Modulen. Es werden Layouts und somit die Struktur der Seiten gespeichert. Es werden "Block HTML" gespeichert was Fragmente einzelner Inhalte ist. Dazu gibt es einen Full Page Cache der genutzt wird, wenn nicht Varnish eingesetzt wird. Ein weiterer Teil sind Übersetzungen.
Dieser Cache ist entsprechend wichtig, weil nicht jede Kleinigkeit in Magento so berechnet werden muss. Es entlastet den Server massiv, weil diese Dinge schlicht im Zwischenspeicher sind.
Risiko ist hier mehr die zu häufige Leerung dieses Caches. Der Cache funktioniert üblicherweise recht gut und selten werden Dinge fälschlicherweise vorgehalten, die bereits abgelaufen sind. Was aber passieren kann ist, dass wenn man diese komplett leert, dass dieser eben komplett leer ist. Die unglückliche Person, die dann das erste Mal eine URL aufruft hat womöglich brutale Ladezeiten.

Beispiel für den Magento Cache:
Dieser Cache ist produktiv eigentlich immer schlicht aktiv. Ohne diesen würde der Shop super langsam sein. Auf einem Entwicklungsysystem ist dieser oft deaktiviert und dort bemerkt man sofort den Unterschied in den Ladezeiten. Das System muss schlicht jede Kleinigkeit berechenen/ermitteln und der Server ist somit stark belastet was in höherer Ladezeit resultiert.
5. Server-Level & System-Caches
Auf Server-Level wo die Webserver Anwendung und auch Datenbankanwendung aktiv sind gibt es weitere Caches. Diese werden üblicherweise vom Hoster bereitgestellt und sind aktiv bzw. können aktiv gestellt werden.
Dort gibt es z.B. den OPcache. Dieser speichert das Ergebnis von PHP Code-Teilen vor. Das führt dazu, dass eben nicht jeder PHP Code neu ausgeführt/verarbeitet werden muss sondern laufend wiederkehrende Dinge direkt zur Verfügung gestellt werden. Mehr zu OPcache auf der offiziellen Website
Es gibt den Redis oder Memcached. Hier werden Daten im Arbeitsspeicher anstelle der Festplatte gespeichert was den Zugriff extrem schnell macht. Es wird üblicherweise im Bereich von User-Sessions (Logins, User Status, Warenkörbe usw.) oder auch Cache gewisser Daten (Seitenfragmente, Suchindizes usw.) verwendet. Mehr Informationen zu Redis oder Memechached auf den Websites.
Im Bereich des Betriebssystems selbst wie Linux gibt es noch einen Cache. Das würde hier den Rahmen sprengen und kann für Shopbetreiber schlicht ignoriert werden und ist Aufgabe des Hosters.
Im Bereich der Datenbank selbst können noch Buffer eingesetzt werden, aber auch das ist eher Aufgabe des Hosters bzw. sehr speziell.
Ergebnis der Server bzw. System-Caches: Auch in diesem Bereich gibt es eine Vielzahl von Caches die je nach Situation des eigenen Shop auch alle genutzt werden sollten. Insbesondere wenn ein Shop eben keine guten Ladezeiten hat, kann hier z.B. auch ein veraltete Cache auf Server-Level die Ursache sein.
Mehr über Magento Hosting erfahren Sie hier
Caching und SEO
Es ist vermutlich kein Geheimnis mehr, dass die Ladezeit einer Seite von Google zur Beurteilung des Seiten-Rankings herangezogen wird. Natürlich kann eine inhaltlich schlechte Seite nicht durch top Ladezeiten plötzlich super Rankings erreichen. Wenn aber inhaltlich gleichgute Seiten um Rankings konkurrieren, gewinnt ganz klar die mit der besseren Ladezeit. Der Grund ist, dass die User schlicht die Seite mit besseren Ladezeiten bevorzugen werden und das Google entsprechend im Rating wiederspiegelt.
Gleichzeitig wirkt sich eine schnelle Ladezeit positiv auf die Conversions aus. Jeder kauft lieber in einem Shop (oder auch Ladengeschäft) wo man zügig bedient wird. Man geht nur zu einem Laden mit langen Schlagen, wenn z.B. der Preis wirklich so gut ist, dass einem das mehr Wert ist als schnell bedient werden.
Mehr Informationen zu Suchmaschinen Optimierung für Mittelstand und Magento
Übersichtstabelle - Cache Arten im Magento Umfeld
| Ebene | Beispiel | Speichert | Vorteil | Risiko |
|---|---|---|---|---|
| Browser | HTTP-Cache im Chrome/Firefox | Bilder, CSS, JS | Schnellerer Seitenwechsel, weniger Datenverbrauch | Alte Dateien bei fehlender Versionierung |
| CDN/Edge | Cloudflare, Akamai | Statische Assets, teilweise HTML | Globale Beschleunigung, Serverentlastung | Veraltete Inhalte |
| Reverse Proxy | Varnish | Komplette HTML-Seiten | Millisekunden-Ladezeiten | Probleme mit personalisierten Inhalten |
| Magento intern | Layout-, Block-, FPC-Cache | Shop-Konfig, Layouts, HTML-Fragmente | Geringere Serverlast, schnelle Renderzeiten | Falsches Leeren bremst den Shop |
| Server/DB | OPcache, Redis, Buffer Pool | PHP-Code, Sessions, DB-Daten | Reaktionsschnelle Basis, stabil unter Last | Engpässe bei falscher Dimensionierung |
Fazit - Cache ist keine Taste sondern eine komplette Architektur im Shop Umfeld
Der Magento Cache ist kein "Knopf zum Leeren", sondern ein strategisches System. Wer die Ebene versteht vom Browser über evtl. CDN bis zur Datenbank, der kann die Performance, Stabilität und letztlich die Kundenzufriedenheit massiv steigern.
Die zentrale Erkenntnis ist, dass Cache in Schichten arbeitet. Jede Ebene bringt Vorteile, aber auch entsprechend Verantwortung/Risiko. Entscheider sollten dafür sorgen, dass Entwickler und Admins eben nicht nur jedes Mal "löschen", wenn Daten veraltet sind sondern ein System schaffen, wo dies automatisiert je nach den Anforderungen der Ebene abläuft.
Sie möchten weitere Informationen zu Magento Onlineshops?
Information zur Betreuung von Magento Onlineshops durch KonVis finden Sie hier
Informationen zu Magento Hosting erfahren Sie hier
Blogpost zum Thema Magento Ladezeit verbessern finden Sie hier
Informationen zu Suchmaschinen Optimierung für Mittelstand und Magento
Kontaktieren Sie mich gerne auch für eine individuelle Beratung.










