Hallo, ich würde gern per cronjob eine queue befüllen, weiß jemand ob und wie das mit Linux-Bordmitteln geht? Hintergrund: Ich habe hier einen Notfall-Backup-Server, der von einer handvoll anderer Server Daten zieht. Manche dieser Aufträge laufen recht häufig (jede Minute) andere nur alle 5 oder 10 Minuten, andere stündlich, täglich oder wöchentlich. Mittlerweile ist es eine halbe Doktorarbeit mit den jeweiligen Laufzeiten das ganze so einzustellen, dass es selten zu Konflikten kommt. Eigentlich ist es aber gar nicht schlimm, wenn eine handvoll schneller Jobs sich verspäten, weil ein anderer Job gerade eine Ressource blockiert. Die häufigen Jobs sind sehr schnell fertig, die seltenen dauern länger. Meine Priorität ist ganz klar, dass alle Jobs ausgeführt werden und die langwierigen auch ungefähr zur richtigen Zeit (± 30 Min). Mit einer Queue, die über den Cron befüllt wird könnte ich das sehr bequem erreichen. Durch die Laufzeiten und timeouts ist trivial zwingend klar, dass die Queue nicht unendlich anwachsen könnte. Ich könnte mir aber auch vorstellen, dass ich zum Beispiel die Minuten Jobs dann doch streichen würde, wenn die Queue mehr als ein Dutzend Einträge hat etc. pp. Deswegen die Frage. Geht sowas mit verbreiteten Linux Tools? vlg Timm
Gast
#5415541
Das Kommando 'batch' sollte tun, wonach du suchst.
Das müsste mit systemd sehr gut gehen. Der kann zeitliche Jobs triggern und ich meine ( Aber keine gewähr ) warten bis andere Dinge erledigt sind.
- Jobs abweisend programmieren. Also sicherstellen, dass ein neuer Job gleicher Funktion nicht startet, bevor der alte fertig ist. - Vielleicht hilft dir "batch" weiter. Gehört zur cron/at Familie. - mcron (Mellor's cron) erlaubt neben der klassischen auch eine alternative Lisp-artige Spezifikation der Startbedingungen.
Gast
#5415554
* 'batch' ist Bestandteil von 'at'
Hallo, Danke! batch hört sich erstmal gut an, aber eine Frage: führt batch einen Job nach dem anderen aus, so als ob sie der Reihe nach in einem Shell-Skript ständen, oder startet batch alle gleichzeitig, sobald System Load unter 0,8 ist? (Ich gebe zu, letzteres klingt nicht sehr sinnvoll, aber ...) vlg Timm
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.