Hallo Community,
ich würde gerne einen Reverese Proxy, Varnish oder nginx Cache einsetzen um die Ladezeit unseres Shops extrem zu verbessern. Derzeit hosten wir bei Mittwald und da ich vor Allem mit meinen persönlichen Ansprechpartnern dort seit über einem Jahrzehnt hoste würde ich auch gerne dort bleiben. Dennoch könnten wir etwas Speed vertragen. Kann mir jemand einen Hoster empfehlen, bei dem ich zusätzlich zu meinem Server nur entsprechend einen Reverse Proxy etc. einsetzen kann? Gerade auch das Setup wäre mir hier sehr wichtig. Danke für Eure Tipps.
Ein Proxy (egal ob Varnish oder vergleichbares) bringt immer eine weitere Komplexitätsebene. Persönlich halte ich da nicht viel von - sicherlich kann das in manchen Fällen Sinn machen, aber in den wenigsten Fällen bringt es den gewünschen Vorteil. Hier sollte es im Unternehmen schon jemanden geben, der sich detailliert mit diesem Setup auskennt, sonst kann da viel schief gehen. Der Hoster selbst reicht hier i.d.R. nicht aus. Die Konfiguration ist ja nur ein Bruchteil der für den Betrieb notwendig ist. Hier muss man sich auch Gedanken über das Cache leeren, die Cache Invalidierung und das Debuggen im Fehlerfall machen. Zudem ist auch ein Proxy nicht immer eine gute Lösung, setzt man bspw. viele ESI-Tags ein, macht der Varnish die Seite eher langsamer, als das er hilft.
Ich würde empfehlen auf Redis als Cache-Storage zu setzen. Den kann man dann im gleichen Zug auch als Session Storage nutzen:
https://developers.shopware.com/developers-guide/shopware-config/#redis-configuration
https://developers.shopware.com/sysadmins-guide/sessions/#redis
Damit spart man sich den Proxy und die vielen Möglichen Fehlerquellen die bei einer solchen Einrichtung entstehen. Zusätzlich lässt sich der Redis auch viel einfacher im Debugging-Fall abschalten. Das einzige was man dafür braucht, ist natürlich einen Redis-Server mit passender Ausstattung. Da der Cache dann quasi aus dem „Ram“ kommt, sollte man damit schon einen Geschwindigkeitsvorteil erreichen.
Edit: Achja, das bringt natürlich auch alles nur was bei gecachten Seiten - alles was ohne Cache aufgerufen wird (bspw. weil die Seite invalidiert wurde) wird ähnlich langsam bleiben.
Danke für die Hilfestellung - aber woher bekomme ich so einen redis storage? Mittwald bietet das meines Wissens nicht an, kann man hier auf externe Anbieter zurückgreifen? Das mit der Invalidierung ist mir klar, mir geht es vor Allem um extreme Performance Zuwächse beim Time to first byte.
Im Prinzip kannst du einen Redis-Cache überall her bekommen. Wenn du aber ein Delay hast fängt es an nicht mehr Interessant zu sein.
Ich habe ein Redis-Cluster im Netzwerk laufen. Das solltest du auch tun. Miete dir einfach eine VM und probiere es aus. Die Installation ist kinderleicht.
Bedenke bitte auch das der Redis offen im Netzwerk steht. Daher ist eine Firewall! ein Must Have!
Grüsse
Daniel
Einen Reverse Proxy einzusetzen, nur um die Ladezeiten zu optimieren, halte ich auch für wenig sinnvoll; dieser bietet sich eher an, wenn man sehr viele paralle Besucher auf der Seite hat.
Habt Ihr denn schon OnPage Optimierungen durchgeführt? Hier als Einstieg ist sicherlich PageSpeed Insights zu empfehlen. Ggf. ist es auch sinnvoll, einen CDN einzusetzen.