Mein Variomedia

Hier können Sie sich im Kundenmenü einloggen.




Passwort vergessen?

Weitere Logins

Sie befinden sich hier: variomedia.de > Support > Häufige Fragen (FAQ) > Webanwendungen und Datenbanken > Cronjobs

Fragen und Antworten

Wie kann ich sicherstellen dass nur ein Cronjob zur Zeit ausgeführt wird?

Bei länger laufenden Cronjobs kann es vorkommen, dass bei zu kurzen Cronjob-Intervallen mehrere Instanzen des Cronjobs gleichzeitig laufen. Falls Sie dies verhindern möchten, können Sie das Hilfsprogramm flock nutzen. flock nutzt eine sogenannte Lockdatei, auf die ein exklusiver Zugriff angefordert wird. Da nur ein Programm zur Zeit exklusiven Zugriff auf die Lockdatei erhalten kann, schlägt die Anforderung fehl, wenn schon ein anderes Programm den Zugriff hat. flock wird wie folgt aufgerufen:

flock -n Lockdatei Programm [Programmargumente]

Über die Option -n wird flock angewiesen sich zu beenden anstatt zu warten, bis der Zugriff auf die Lockdatei freigegeben wurde. Es folgt der Name der Lockdatei (ggf. mit Pfadangabe) sowie das auszuführende Programm mit seinen optionalen Argumenten.

Beispiel

Im folgenden Beispiel soll das PHP-Script cron.php im Unterverzeichnis cron minütlich mit PHP Version 7.4 aufgerufen werden, die Lockdatei soll im gleichen Unterverzeichnis angelegt werden:

* * * * * flock -n cron/cron.lock php74 cron/cron.php &> /dev/null


Cron
flock