1. Home
  2. Wissensdatenbank
  3. Software & Skriptsprachen
  4. Shopware
  5. Shopware 6: Worker im Hintergrund laufen lassen
  1. Home
  2. Wissensdatenbank
  3. Software & Skriptsprachen
  4. Shopware 6: Worker im Hintergrund laufen lassen

Shopware 6: Worker im Hintergrund laufen lassen

Hintergrund
In der Standardkonfiguration führt Shopware 6 Browser Prozesse aus, um alle Hintergrundaufgaben zu erledigen. Dadurch werden andere Web-PHP-Prozesse blockiert. Sofern nun mehrere Benutzer gleichzeitig im Backend arbeiten, verlangsamt dies entsprechend die Seitengeschwindigkeit.

Mehr Details finden Sie hier:

Um dieses Performance Einbußen zu minimieren, können die Prozesse auf dem Server direkt ausgeführt werden.

Deaktiveren der Browser Prozesse
Zum deaktivieren der Browser Prozesse muss folgendes in Shopware hinzugefügt werden:
(Bitte beachten Sie, dass es sich nicht um

/home/'Benutzer'/'Shopverzeichnis'/config/packages/shopware.yaml

shopware:
    admin_worker:
        enable_admin_worker: false

Damit die Einstellung greift, muss der Cache geleert werden:

php /home/’Benutzer’/’Shopverzeichnis’/bin/console cache:clear

Cronjobs einrichten
Um die Cronjobs zu erstellen, müssen folgende Skripte hochgeladen werden:

sw_consumer.sh

#!/bin/bash
cd "$(dirname "$0")"

php /home/’Benutzer’/’Shopverzeichnis’/bin/console messenger:consume --time-limit=295 --memory-limit=512M

sw_scheduled_task.sh

#!/bin/bash
cd "$(dirname "$0")"

php /home/’Benutzer’/’Shopverzeichnis’/bin/console scheduled-task:run --time-limit=295 --memory-limit=512M

Die Skripte müssen Aufrührungsrechte besitzen, damit der Cronjob diese starten kann.

Wie Cronjobs eingerichtet werden finden Sie hier:

Wie richte ich einen Cronjob ein?

Folgende Werte sollten gesetzt werden:

* Ausführung alle 5 Minuten
* Laufzeit: 300 Sekunden
* Memory: 512MB

Aktualisiert am 1. Februar 2023

War dieser Artikel hilfreich?

Ähnliche Artikel