Inhaltsverzeichnis

    Aufgabenplaner für Exporte einrichten

    Hinweis: Diese Dokumentation bezieht sich auf JTL-Shop 4. Die Dokumentation für JTL-Shop 5 befindet sich aktuell unter JTL-Shop.

    Ihre Aufgabe/Ausgangslage

    Sie haben einen oder mehrere Exporte, beispielsweise für eine Preissuchmaschine konfiguriert und möchten gerne regelmäßige Exporte durchführen lassen.

    Exporte automatisieren

    1. Öffnen Sie den Aufgabenplaner im Backend von JTL-Shop über das Menü System > Export: Aufgabenplaner.
    1. Klicken Sie auf die Schaltfläche Neue Planung erstellen. Es öffnet sich die Seite Exportformate.
    2. Wählen Sie über das Dropdown-Menü Exportformate das Format aus, das erstellt werden soll.
    3. Legen Sie anschließend unter Startdatum den Zeitpunkt fest, an dem der erste Export stattfinden soll und unter Alle X Stunden, wie oft der Export wiederholt werden soll. Das Startdatum muss das folgende Format haben: dd.mm.yyyy hh.mm.
    1. Klicken Sie auf Neue Planung erstellen. Sie gelangen zurück zur Seite Aufgabenplaner Exporte. Dort wird Ihre neu erstellte Planung aufgelistet.

    Exporte anstoßen

    Automatisch

    Es gibt zwei Möglichkeiten, den Aufgabenplaner automatisch ausführen zu lassen:

    • Blindgrafik: Der Aufgabenplaner wird über eine sogenannte Blindgrafik, also eine Grafik, die von Ihren Endkunden nicht gesehen werden kann, angestoßen. Jedes Mal, wenn die Blindgrafik geladen wird, prüft der Aufgabenplaner, ob der erforderliche Zeitraum bis zum nächsten Export bereits überschritten wurde und führt ggf. den Export durch. Aktivieren Sie im Template die Option Aufgabenplaner-Blindgrafik aktivieren?, siehe EVO-Template.
    • Cronjob: Folgen Sie bitte der Anleitung „Aufgabenplaner per Cronjob anstoßen“ weiter unten

    Manuell

    Sie können den Export auch manuell anstoßen, unabhängig davon, ob das vorgegebene Zeitfenster bereits verstrichen ist.

    1. Wechseln Sie dazu im Backend von JTL-Shop über das Menü System > Export: Aufgabenplaner wieder auf die Seite Aufgabenplaner Exporte.
    2. Klicken Sie auf die Schaltfläche Cron manuell anstoßen. Der Export wird nun durchgeführt und das Intervall wieder zurückgesetzt.

    In unserer Shop-FAQ finden Sie Hinweise über beispielsweise Unregelmäßige Abarbeitung.

    Häufige Fragen

    Wie und wann werden Aufgaben im Aufgabenplaner abgearbeitet?

    Die im Admin-Backend hinterlegten Aufgaben (Aufgabenplaner((.JTL-Shop-color))) werden folgendermaßen im JTL-Shop abgearbeitet:

    Eine im Template hinterlegte Blindgrafik, welche ungefähr bei jedem fünften Seitenaufruf eingebunden wird, stößt bei gewissen Seitenaufrufen den Aufgabenplaner an. Dieser arbeitet dann, falls noch Aufgaben in der Warteschlange stehen, sukzessiv einen Teil der Aufgaben ab. Beim nächsten Aufruf der Blindgrafik wird der nächste Teil der Aufgaben abgearbeitet. Dank dieser Technik sind bei einem Shop mit regelmäßigen Besuchern keine weiteren Cron-Jobs notwendig. Die Aufgaben werden sukzessiv durch Seitenaufrufe angestoßen.
    Der Aufruf der Blindgrafik bzw. das Anstoßen des Aufgabenplaners hat dabei keine Auswirkung auf die Ladezeit der Seite!

    Die Blindgrafik ist im JTL-Shop3-Tiny Template in der Datei footer.tpl eingebunden.
    Über die URL <Shop-URL>/includes/cron_inc.php kann die Blindgrafik direkt aufgerufen werden und damit die Abarbeitung der Aufgaben manuell angestoßen werden. Ein Aufruf dieser URL im Browser zeigt in der Regel kryptische Zeichen (binäre Darstellung der Blindgrafik). Falls die Seite leer (weiß) bleibt, dann sind aktuell entweder keine Aufgaben in der Warteschlange oder es wird gerade ein Aufgabenprozess abgearbeitet.

    Warum werden meine geplanten Aufgaben nicht oder nur unregelmäßig abgearbeitet?

    Beim Aufgabenplaner handelt es sich nicht um einen Cronjob. Das heißt, dass die Aufgaben nicht nach einem bestimmten Intervall „Alle X Stunden“ abgerufen, sondern durch die Seitenaufrufe in Relation mit der Aufrufzeit gestartet werden. Das heißt, wenn eine Seite aufgerufen wird und die Aufrufzeit (per Timestamp) durch 10 ohne Rest (Modulo 10) teilbar ist, wird die Aufgabe gestartet. Im Durchschnitt erfolgt der Aufgabenstart ca. alle 10 Seitenaufrufe und unter optimalen Bedingungen auch ungefähr in dem angegebenen „Alle X Stunden“-Intervall. Durch geringe Besucherzahlen kann es dazu kommen, dass sich die Aufgaben verzögern oder bei sehr geringen Besucherzahlen sogar zeitweise gar nicht ausgeführt werden.

    Auch die Newsletter und die Exporte werden automatisch über den Aufgabenplaner ausgeführt. Bei einer geringen Besucherzahl Ihres JTL-Shops verzögert sich der Aufgabenstart, der dazu führt, dass die Newsletter oder die Exporte versendet werden. Dies bedeutet auch, dass die Versendung der Newsletter oder der Exporte sich zeitlich verzögern oder bei einer sehr geringen Besucherzahl auch gar nicht erst versendet werden.

    Aufgabenplaner per Cronjob anstoßen

    Wenn Sie die Möglichkeit haben, eigene Cronjobs zu erstellen (entweder Cronjobs auf eigenem Server oder durch externe Cron-Aufrufe), dann können Sie wie folgt vorgehen:

    Sie können das PHP-Script direkt per Cron-Aufruf anstoßen.

    Wenn der Cron-Dienst auf demselben Server wie der Shop läuft, dann wird das Script wie folgt aufgerufen (Pfad zum Shop anpassen!):

    php /pfadZumShop/includes/cron_inc.php

    Bei externen Cron-Diensten (wie z. B. www.cronjob.de) reicht es, das php-Skript per URL-Aufruf zu starten:
    Beispiel:

    http://www.meinshop.de/includes/cron_inc.php

    Standardmäßig werden bei Exportformaten 500 Artikel pro Aufruf abgearbeitet. Das bedeutet, wenn Sie 800 Artikel und zwei Exportformate im Aufgabenplaner eingetragen haben, muss der Cronjob zweimal gestartet werden, damit alle Aufgaben abgearbeitet werden können. Je nach Serverkapazität sollten Sie entsprechend viel Zeit zwischen den Aufrufen einplanen (ca. 2 Minuten). Sie sollten für den Aufruf der Cronjobs einen Zeitraum wählen, in dem möglichst wenige Shop-Besucher online sind.

    Best Practices Aufgabenplaner und Cronjobs

    Für eine reibungslose Abarbeitung von Jobs sollten die folgenden Dinge beachtet werden:

    • Sicherstellen, dass ein Exportjob zügig abgearbeitet werden kann. Je nach Artikelmenge muss dazu der Aufgabenplaner mehrfach hintereinander in einem kurzen Intervall (z. B. minütlich) angestoßen werden (siehe Beispiel oben).
    • Sicherstellen, dass nicht zu viele Exportjobs parallel laufen. Die Startzeiten für Exportjobs sollten so gewählt werden, dass die Jobs problemlos hintereinander (und nicht parallel) fertiggestellt werden sollen.
    • Besucher-Peak-Zeiten und Exportjob-Zeiten trennen: Größere Jobs sollten nächtlich laufen, damit tagsüber (dann, wenn die meisten Besucher im Shop unterwegs sind) die volle Serverpower für den normalen Shop-Betrieb zur Verfügung steht.