Einrichten der Jobverwaltung
Falls Sie Squeeze nicht selbst betreiben, ist dieser Artikel nicht relevant. Vermutlich möchten Sie nur wissen, wie Jobs in der Benutzeroberfläche zu verwalten sind: Jobs über Benutzeroberfläche steuern
Einleitung
Ab Squeeze 2 sollen Jobs primär über die UI konfiguriert werden. Somit ist nur noch die Konfiguration eines einzelnen Jobs im Betriebssystems notwendig, der Rest geschieht dann über die UI.
In Squeeze 1 musste noch pro auszuführendem Job in Squeeze ein Job im Betriebssystem geplant werden. Das System ist in der Theorie weiterhin nutzbar, erzeugt allerdings administrativen Mehraufwand.
Job im Betriebssystem einrichten (ab Squeeze 2.5)
Für die Gewährleistung der zeitgesteuerten Ausführungen muss auf dem Host ein Job hinterlegt werden der das PHP-Job-Script squeezer jobs:schedule --all
immer zur vollen Minute ausführt.
Dieses Skript ist verantwortlich für die eigentliche Job-Ausführung und führt je nach Parameter die Jobs aller Mandanten oder nur der angegebenen Mandanten aus.
Für weitere Informationen können alle Optionen mittels --help
flag gelistet werden (siehe auch Einführung zur Squeeze 2.5 CLI):
Beispiel Linux
Auf Linux ist besonders darauf zu achten, dass Jobs mittels des www-data
Users ausgeführt werden.
Falls SQUEEZE auf Linux betrieben wird, ist ein Cronjob (bspw. mittels sudo crontab -u www-data -e
) einzurichten.
*/1 * * * * php /var/www/html/squeeze/squeezer jobs:schedule --all
Job im Betriebssystem einrichten (vor Squeeze 2.5)
Für die Gewährleistung der zeitgesteuerten Ausführungen muss auf dem Host ein Job hinterlegt werden der das PHP-Jobs-Script cli/jobs.php schedule
immer zu vollen Minute ausführt.
Dieses Skript ist verantwortlich für die eigentliche Job-Ausführung und führt Jobs aller Mandanten aus.
Beispiel Linux
Auf Linux ist besonders darauf zu achten, dass Jobs mittels des www-data
Users ausgeführt werden.
Falls SQUEEZE auf Linux betrieben wird, ist ein cronjob (bspw. mittels sudo crontab -u www-data -e
) einzurichten.
*/1 * * * * php /var/www/html/squeeze/cli/jobs.php schedule
Beispiel Windows
In der Windows Aufgabenplanung (Task Scheduler) muss ein Task definiert werden, welcher als Trigger die folgenden Einstellungen aufweist:
- Nach einem Zeitplan
- Täglich
- Wiederholen jede 1 Minute für die Dauer von 1 Tag
Die 1 Minute kann man manuell eintragen
Als Aktion muss die PHP Excutable aus dem SQUEEZE Installationsverzeichnis mit den CLI script jobs.php
ausgeführt werden:
- Programm starten
<INSTALLATIONS_PFAD_SQUEEZE>/php/php.exe
- Argumente:
<INSTALLATIONS_PFAD_SQUEEZE>/htdocs/cli/jobs.php schedule
(für alle Mandanten)
Ohne Angabe von Mandanten, werden die Jobs für alle SQUEEZE Mandanten geprüft. Der Mandant kann im Aufruf angegeben werden:
<INSTALLATIONS_PFAD_SQUEEZE>/htdocs/cli/jobs.php schedule <tenant>
Hinweis bzgl. Performance
Bei einem System mit vielen Mandanten kann es vorkommen, dass die Job-Ausführung länger dauert. Das ist im Kontext von Job-Skripten besonders kritisch, da sich ggf. Jobs "überholen" oder parallel ablaufen könnten. In solchen Fällen kontaktieren Sie bitte den DEXPRO Support, damit gemeinsam evaluiert werden kann, ob eine Sonderanpassung notwendig ist.
No Comments