# scheduled task / Cronjob - Ablauf und Funktionsweise

**URL:** <https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662>\
**Category:** Allgemein\
**Created:** [2. Mai 2020 um 18:12 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662 "2020-05-02T18:12:23Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![rick7240](https://avatars.discourse-cdn.com/v4/letter/r/8491ac/32.png) [@rick7240](https://forum.shopware.com/u/rick7240)\
**Post date:** [2. Mai 2020 um 18:12 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662/1 "2020-05-02T18:12:23Z")

</div>

Hallo zusammen,

in Shopware 6 werden die Cronjobs ja über&nbsp; **bin/console scheduled-task:run** und b **in/console messenger:consume** &nbsp;ausgeführt. Beide Scripte laufen so ja in einer Endlosschleife und unterscheiden sich somit von der Vorgehensweise in SW5. Wie soll mit der Ausführungsvariante in Shopware 6 gearbeitet werden? Ein Cronjob auf dem Server, der das Script allle X Minuten aufruft ist somit ja jetzt nicht mehr Sinnhaft, oder?

Müssen beide Scripte auf dem Server in einer Endlosschleife durchlaufen? Wie ist es in der Praxis sinnvoll?

VG  
Rick

---

<div class="post-metadata">

**Author:** ![claudio](https://avatars.discourse-cdn.com/v4/letter/c/7cd45c/32.png) [@claudio](https://forum.shopware.com/u/claudio)\
**Post date:** [4. Mai 2020 um 14:29 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662/2 "2020-05-04T14:29:45Z")

</div>

Vielleicht hilft dir der Thread:

[https://forum.shopware.com/discussion/comment/270360/#Comment\_270360](https://forum.shopware.com/discussion/comment/270360/#Comment_270360)

---

<div class="post-metadata">

**Author:** ![bfuchs](https://avatars.discourse-cdn.com/v4/letter/b/e274bd/32.png) [@bfuchs](https://forum.shopware.com/u/bfuchs)\
**Post date:** [29. Mai 2020 um 15:43 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662/3 "2020-05-29T15:43:57Z")

</div>

Wo ist der Unterschied zwischen den beiden Befehlen und was machen Sie genau?&nbsp;Ich habe mir folgende Links angeschaut aber werde nicht richtig schlau daraus:

[https://docs.shopware.com/en/shopware-platform-dev-en/references-internals/core/module/tasks#the-task-scheduler](https://docs.shopware.com/en/shopware-platform-dev-en/references-internals/core/module/tasks#the-task-scheduler)  
[https://docs.shopware.com/en/shopware-platform-dev-en/references-internals/core/module/queue](https://docs.shopware.com/en/shopware-platform-dev-en/references-internals/core/module/queue)

Die Tasks in der Tabelle “scheduled\_task” werden durch beide Befehle ausgeführt, was ich an der “last\_execution\_time” sehe. Müssen trotzdem beide Befehle regelmäßig ausgeführt werden? Muss eine Reihenfolge eingehalten werden?

---

<div class="post-metadata">

**Author:** ![FloC3](https://avatars.discourse-cdn.com/v4/letter/f/838e76/32.png) [@FloC3](https://forum.shopware.com/u/FloC3)\
**Post date:** [7. August 2020 um 06:03 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662/4 "2020-08-07T06:03:02Z")

</div>

würde mich auch interessieren… werd nich schlau…

&nbsp;

- welchen der Befehle muss ich ausführen?
- Muss ich die 1x ausführen und dann laufen sie für immer?
- brauch ich noch wie bei SW5 einen Cron auf dem Server, der den SW Cron dann triggert alle Jobs auszuführen?
- woher weiß ich, ob mein Cron erfolgreich angestoßen wurde und läuft?&nbsp;
- wie kann ich sehen, welche Cronjobs gerade laufen?
- wie kann ich einen Cronjob deaktivieren?
- kann mein TaskHandler einen Konstruktor haben, der mehr als den&nbsp;_scheduled\_task.repository_ Parameter hat?

&nbsp;

ich habe außerden einen Cron, der so um die 1,5 Stunden läuft … ist ein Produktabgleich vieler Produkte. Wie richt ich den am besten ein?

bin/console scheduled-task:run --time-limit=60

```
The worker will automatically exit once it has been running for 60s

```

mit 60s komm ich ja nicht weit… aber ich kann auch kaum 30000s angeben…&nbsp;andere Crons sollen in der Zwischenzeit natürlich öfters&nbsp;laufen.

wenn ich mit dem messenger:consume -vv arabeite, sehe ich tausende Einträge für&nbsp;**[messenger] Shopware\Core\Content\Sitemap\ScheduledTask\SitemapMessage**

wieso ist das so? Wird wohl jede Sekunde ausgeführt oder wie…&nbsp;

[@Moritz Naczenski]([http://forum.shopware.com/profile/14574/Moritz](http://forum.shopware.com/profile/14574/Moritz) Naczenski „Moritz Naczenski“)‍&nbsp;

---

<div class="post-metadata">

**Author:** ![FloC3](https://avatars.discourse-cdn.com/v4/letter/f/838e76/32.png) [@FloC3](https://forum.shopware.com/u/FloC3)\
**Post date:** [11. August 2020 um 13:03 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662/5 "2020-08-11T13:03:34Z")

</div>

Kann jemand helfen?

---

<div class="post-metadata">

**Author:** ![rick7240](https://avatars.discourse-cdn.com/v4/letter/r/8491ac/32.png) [@rick7240](https://forum.shopware.com/u/rick7240)\
**Post date:** [17. August 2020 um 10:59 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662/6 "2020-08-17T10:59:26Z")

</div>

> [@FloC3 schrieb:](https://forum.shopware.com/profile/27446/FloC3 "FloC3")
> 
> Kann jemand helfen?

Würde mich hier ebenfalls freuen, wenn jemand eine Info dazu geben kann…&nbsp;

---

<div class="post-metadata">

**Author:** ![Exe](https://avatars.discourse-cdn.com/v4/letter/e/49beb7/32.png) [@Exe](https://forum.shopware.com/u/Exe)\
**Post date:** [17. August 2020 um 11:32 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662/7 "2020-08-17T11:32:57Z")

</div>

Ich würde eigene Cronjobs auch erstmal als solche bauen. Damit hat man mehr Kontrolle. Also einen einfachen Command erstellen. Nutze ich momentan zB für DB-Cleanup Aufgaben.

Für SW6 Aufgaben hab ich hingegen den TaskRunner einrichten lassen.

---

<div class="post-metadata">

**Author:** ![schwarzwaldmetzgerei](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/schwarzwaldmetzgerei/32/16872_2.png) [@schwarzwaldmetzgerei](https://forum.shopware.com/u/schwarzwaldmetzgerei)\
**Post date:** [3. Januar 2024 um 17:37 UTC](https://forum.shopware.com/t/scheduled-task-cronjob-ablauf-und-funktionsweise/66662/8 "2024-01-03T17:37:20Z")

</div>

Grundsätzlich gibts zwei CLI Befehle, die zyklisch auf dem Webserver ausgeführt werden sollten, wo shopware läuft. Dazu ist vorher der „admin worker“ in der shopware.yaml zu deaktivieren. Denn standardmäßig läuft dies alles, wenn man im Backend eingeloggt ist. Deshalb „Admin worker“. Details dazu, siehe shopware Doku.

Dann könnte man ein systemd Skript schreiben oder sonst wie den Worker zyklisch neu starten auf der Console. Ich habe das bei uns mittels Cronjob gelöst. Der Cron startet die zwei Prozesse immer alle 10 Minuten an. Beide haben ein LIMIT von 5 Minuten, sind also beendet, bis der Cron die beiden Prozesse neu anstartet. Das geht dann permanent so…

Also cronjobs für Shopware AB VERSION 6.5.7 wie folgt:

→ # SHOPWARE: Alle 10 Minuten CLI-worker mit 300sec und Mem 512M Limit starten:  
\*/10 \* \* \* \* /usr/bin/php /var/www/shop/web/bin/console messenger:consume async low\_priority --time-limit=300 --memory-limit=512M  
\*/10 \* \* \* \* /usr/bin/php /var/www/shop/web/bin/console scheduled-task:run --time-limit=300 --memory-limit=512M
