Cron Jobs sind Befehle, die ein Server nach einem festen Zeitplan von selbst ausführt. Der Name geht auf das griechische chronos für Zeit zurück; cron heißt der Dienst, der die Uhr im Blick hat, job die einzelne Aufgabe. Jede Zeile im Zeitplan nennt eine Uhrzeit und einen Befehl.
- Cron Jobs
Befehle, die ein Server nach einem festen Zeitplan von selbst ausführt.
Beispiel: „Der Cron Job legt nachts um drei die Sicherung an.“Auch: Cronjob, geplante Aufgabe, Zeitplan-Auftrag. Eingerichtet werden sie in der Hosting-Oberfläche oder über SSH in der sogenannten crontab.
Anwendungsfall: Auch CMS brauchen sie. Ohne Cron Job laufen geplante Veröffentlichungen, Suchindex und Aufräumarbeiten erst, wenn zufällig jemand die Seite aufruft.
Wofür Cron Jobs gebraucht werden
Für alles, was regelmäßig und ohne Anlass passieren muss: Sicherungen, Erneuerung der Zertifikate, Leeren alter Caches, Importe aus Warenwirtschaft oder Buchhaltung und der Versand von Benachrichtigungen.
Dazu die Aufgaben, die eine Website im Hintergrund braucht, etwa das Verschicken aus einer Warteschlange. Wird sie an einen Seitenaufruf gehängt, warten Besucher auf Arbeit, die sie nichts angeht, und bei wenig Verkehr passiert tagelang nichts.
Wie der Zeitplan von Cron Jobs aufgebaut ist
Aus fünf Feldern vor dem Befehl: Minute, Stunde, Tag im Monat, Monat und Wochentag. Ein Stern heißt jeder Wert. Die Zeile für jeden Tag um drei Uhr nachts beginnt also mit null, drei und drei Sternen.
Zwei Punkte gehören dazu. Gerade Zeiten wie Mitternacht sind bei allen beliebt, und dann rechnen tausend Server gleichzeitig; ein paar Minuten Versatz nehmen Last heraus. Und die Zeitzone des Servers ist nicht zwangsläufig die eigene, was bei nächtlichen Aufgaben um Stunden danebengeht.
Woran Cron Jobs still scheitern
An der Umgebung. Der Dienst startet mit wenigen Variablen und ohne das, was in einer Anmeldung gesetzt wird. Ein Befehl, der von Hand läuft, findet im Cron Job plötzlich den Interpreter nicht. Abhilfe sind vollständige Pfade und ein Testlauf mit derselben Umgebung.
Der zweite Punkt ist die Stille. Ein Cron Job, der nicht läuft, meldet sich nicht; auffällig wird es, wenn die Sicherung gebraucht wird und fehlt. Deshalb gehört die Ausgabe in eine Logdatei und das Ergebnis in das Server Monitoring, das meldet, wenn ein Lauf ausbleibt.