Ich habe eine Verständnisfrage zum Scheduler.
Ich lege einen Cron fest. Sagen wir, alle 5 Minuten.
Der stupst in diesem Intervall Scheduler an.
Jetzt verlangt aber Scheduler beim Einrichten eines (directmail-) Tasks nach folgendem Parameter:
Frequency (seconds or cron command)
... das macht keinen Sinn für mich, logisch wäre doch "Jedes wievielte Mal, an dem der Scheduler angestupst wird, soll er diesen Task ausführen"
Was passiert, wenn ich nun zB sage "alle 60 Sekunden", und der Cron aber nur alle 300 Sekunden vorbeikommt - gibt es die Möglichkeit, dass sich die beiden "verpassen"? Oder wird ein Mittelwert gesucht?
Und noch eine praktische Frage: was muss ich einstellen, wenn ich will, dass der Task jedesmal ausgeführt wird, wenn der Scheduler getriggert wird? *****? Oder identisch wie der Cron?
Danke!
Urs
Der Scheduler prüft seine Taskliste jedesmal, wenn er durch den Cronjob auf dem Server angestoßen wird und führt dann alle fälligen Tasks aus.
Es bringt also tatsächlich nichts, wenn der Scheduler weniger häifig aufgerufen wird, als die Tasks ausgeführt werden sollen, die er abarbeiten soll.
Wenn der Scheduler jedes mal eine Aktion ausführen soll, wenn er ausgeführt wird, stellt man am besten den Intervall für den Cronjob auf den gleichen Wert, wie den Task im Scheduler, sodass der Task grundsätzlich wieder fällig ist, wenn der Scheduler zur Abarbeitung angestoßen wird.
Stellt man im Scheduler geringere Intervalle ein, wird der Task im Backend lediglich als verspätet angezeigt, bis er dann durch den Scheduler abgearbeitet wird, wenn dieser wieder durch den Cronjob gestartet wird.
Vielen Dank für die Erklärung!
Hallo,
ich stehe bei der Zeiteinstellung für meinen automatisierten Newsletter etwas auf dem Schlauch.
Also prinzipiell läuft der Cronjob und der Newsletter Versand schonmal mit dem Scheduler, es geht also "nur" um die richtigen Intervalle beim Cronjob und im Scheduler.
Mein Prinzip ist das folgende:
Es soll jede Woche einmalig automatisiert ein Newsletter erstellt werden (der Newsletter-Inhalt ist ein tt_content Datensatz der manuell jede Woche geändert wird).
Dazu habe ich eine Newsletter-Seite (inkl. Template) angelegt, welche als Inhalt per "Datensatz einfügen" ein Inhaltselement aus der Typo3 Seite enthält. Anschließend habe ich diesen Newsletter über direct mail als "Entwurf" gespeichert. Danach habe ich im Scheduler zwei Tasks angelegt:
1. Direct Mail: Create Mail from Draft (direct_mail) (mit dem entsprechenden Entwurf)
2. Direct Mail: Mailing Queue (direct_mail)
beide sollen wiederkehrend jeden Montag um 10 Uhr ausgeführt werden (* 10 * * 1)
Der Cronjob started ebenfalls jeden Montag um 10 Uhr. (* 10 * * 1)
Was nun passiert ist folgendes:
Es wird ein Newsletter verschickt, der allerdings einen veralteten Inhalt enthält (1 Woche vorher). Der Seiteninhalt wird aufjedenfall jeden Montag VOR 10 Uhr geändert, also eigentlich sollte der Newsletter den aktuellsten Inhalt enthalten, tut er aber nicht.
Jemand eine Idee woran es liegt?
Ist das Vorgehen überhaupt richtig, ich meine wird durch den Task "Direct Mail: Create Mail from Draft (direct_mail)" auch immer ein aktueller Newsletter mit aktuellen Inhalt erstellt?
Muss ich das Erstellen und Versenden zu versetzten Zeiten aufrufen?
Benötige dringend Hilfe, da es natürlich etwas peinlich ist, einen veralteten Newsletter zu verschicken.
Grüße
Volker
direct_mail holt sich die Inhalte übers Frontend. Könnte sein, dass da noch alte Version im TYPO3-Cache hängt?
Mhh, aber auf der Seite ist eigentlich nach der Änderung im Frontend immer alles aktuell.
Kann man denn mit dem Scheduler den Seiteninhalts-Cache löschen lassen?
Stimmen meine Einstellungen was das Timing von Cronjob und Scheduler angeht überhaupt (es läuft ja sozusagen alles zeitgleich)?
Der Cronjob ruft ja zunächst das Erstellen des Newsletters anhand des Drafts auf und anschließen wird der Versand angestoßen oder kann es sein, dass erst der Versand (also damit des letzten Newsletters der Vorwoche) angestoßen wird und anschließend die Erstellung des neuen Newsletters?
Kann man da irgendwie die Reihenfolge beeinflussen?
Oder müsste ich dann den Cronjob auf z.B. 9 Uhr stellen und im Scheduler dann die Erstellung des Drafts auch auf 9 Uhr und das Versenden des Newsletters dann z.B. auf 10 Uhr?