zstd Komprimierung verwenden

Vorwort

Shopware hat für die Komprimierung des Caches, sowie des Warenkorbs, bis Shopware 6.6 im Standard gzip (gzcompress) verwendet. Seit Shopware 6.6 kann alternativ für die Komprimierung auch zstd (Zstandard) verwendet werden.

Der Komprimierungsalgorithmus zstd ist schneller als gzip und hat ein besseres Kompressionsverhältnis, weshalb die Verwendung seitens Shopware empfohlen wird.


Voraussetzungen

  • Shopware 6.6
  • Shopware Server



PHP-Erweiterung zstd prüfen

Vor der eigentlichen Konfiguration in Shopware muss geprüft werden, ob die PHP-Erweiterung zur Verfügung steht. Die Prüfung kann durch das Erstellen einer phpinfo() Datei durchgeführt werden, die im Document-Root erstellt wird.


# /var/www/vhosts/creoline-demo.com/phpinfo.php

<?php
phpinfo();
?>


Speichern Sie anschließend die Datei und rufen Sie diese über Ihren Webbrowser auf.


Anschließend können Sie in die Webseite nach folgendem Parameter durchsuchen, damit Sie direkt feststellen können, ob die PHP-Erweiterung zstd bereits installiert ist.

Sofern zstd nicht installiert ist, kann die Installation der PHP-Erweiterung wie in folgendem Hilfecenter-Artikel beschrieben durchgeführt werden: Installation zstd (Zstandard)



zstd in Shopware konfigurieren

Nach der Prüfung, ob die PHP-Erweiterung auf dem Server installiert ist, kann die zstd Komprimierung in Shopware konfiguriert werden. Öffnen Sie dafür die shopware.yaml und ergänzen Sie folgende Konfiguration in der shopware.yaml.


# config/packages/shopware.yaml
shopware:
    cache:
        cache_compression: true
        cache_compression_method: 'zstd'


Sofern zstd auch für den Warenkorb konfiguriert werden soll, um die Ladezeiten des Warenkorbs zu optimieren, ergänzen Sie zusätzlich folgende Konfiguration:


# config/packages/shopware.yaml
shopware:
    cart:
        compress: true
        compression_method: zstd


Anschließend muss der Cache vollständig geleert werden. Diesen können Sie in der Shopware Administration oder alternativ über folgenden CLI Befehl leeren.


bin/console cache:clear


Sofern hierbei keine Fehlermeldungen auftreten, ist die zstd Komprimierung konfiguriert und wird erfolgreich angewendet.