Cronjobs - PHP Skripte automatisch aufrufen lassen

In diesem kleinen Tutorial möchte ich aufzeigen wozu Cronjobs gut sind und wie man kostenlos, ohne eigenen Server, einen solchen einrichten kann. Das Ganze wird anhand eines PHP-Skriptes gezeigt. Natürlich sind Cronjobs nicht an eine Sprache wie PHP gebunden, sondern können beliebige Ziele automatisiert aufrufen.

Cronjobs-Tutorial

Was sind Cronjobs?

Also zunächst einmal sind Cronjobs nur ein gängiger Begriff im Sinne des automatischen Ausführens von Prozessen. Die Technik kommt aus der UNIX-Welt. Gemeint damit sind Cron-Deamons, welche auf Betriebssystemen normalerweise wichtige Anwendungen wie das automatische Anlegen von Backup steuern. Also im Grunde genommen würde dies unter Windows den Batch-Dateien entsprechen, wobei diese soweit ich weiß keine automatische Steuerung erlauben.

Welchen Nutzen hat das Ganze?

Wie bereits erwähnt lassen sich sehr einfach wiederkehrende Aufgaben ohne Zutun erledigen und man hat mehr Zeit für andere Sachen. Natürlich sind Crobjobs auch viel genauer als wenn man von Hand Backups erstellen würde. 

Wir erstellen in dieser Anleitung beispielhaft einen Cronjob für das Speichern der Anzahl von Einträgen in einer Datenbank. Es liegt also eine Tabelle vor, welche beliebig viele Einträge beinhaltet und das PHP-Skript speichert nun die jeweils aktuelle Anzahl in einer neuen Tabelle. Der Cronjob soll dabei alle 5 Minuten ausgeführt werden und am Ende soll das Ergebnis grafisch ausgegeben werden. Also fangen wir an.

Kostenlos einen Cronjob einrichten

Wir nutzen hier einen Anbieter, der kostenlos ist. Natürlich bieten andere kommerzielle Anbieter ähnliche oder sogar bessere Features an. Cronjob.de liefert zwar nur einen einzigen Cronjob kostenlos, aber das reicht ja in den meisten Fällen bereits aus oder man legt sich einfach mehrere Accounts an. Um Inaktivität zu vermeiden muss man sich leider alle 8 Wochen einmal anmelden. Dies reicht aus um den Account aktiv zu halten, also den Cronjob.

Wir wollen jetzt also einen Cronjob erstellen. Dazu einfach auf "Cronjobs verwalten".

Nun einfach "Neuen Cronjob erstellen" auswählen und gewünschte Daten eingeben. Ich persönlich möchte das maximal mögliche Aufrufen meiner PHP-Datei erreichen, daher gebe ich alle 5 Minuten an bzw. wähle von hand alle Elemente aus oder wähle den entsprechenden vorgefertigten Eintrag aus. Mit einer Speicherung erfolgt nun also die Anweisung für Cronjob.de alle 5 Minuten vorbei zu schauen. Quasi wie die Webcrawler von Google. 

Nun könnte man wie anfangs erwähnt zusätzlichen einen Graphen anzeigen lassen. Ich werde in einem anderen Tutorial darauf eingehen wie man so etwas generieren kann. Dieser Graph stellt also die Nutzerstatistik von LJTD dar. Alle 5 Minuten wurde die "checker.php" seit Monaten ausgeführt und hat jedes mal eine Zahl und eine Zeitangabe abgespeichert. Diese kann sehr einfach genutzt nutzt für einen solchen Graphen.

Fazit

Cronjobs eignen sich nicht nur für Backups ideal. Sie übernehmen zeitgesteuert sämtliche unangenehme Aufgaben. Externe Anbieter haben zudem den Vorteil, dass der Cronjob nicht auf dem eigenen Rechner laufen muss. Nachteil ist jedoch, dass Anbieter wie Cronjob.de die Einstellungen stark eingrenzen. In der kostenlosen Version ist das gerade einmal ein Cronjob und das maximal alle 5 Minuten. Für ein Hobbyprojekt ist dies aber völlig ausreichend. Viel Spaß damit falls ihr soetwas benötigen könnt.

Kommentar schreiben

Kommentare: 1
  • #1

    Lang (Freitag, 29 August 2014 07:46)

    An online cronjob service overview can be found at http://www.cronjobservices.com/