qual è la differenza tra rufus-scheduler e cron?
-
14-11-2019 - |
Domanda
https://github.com/jmettraux/rufus-scheduler afferma che:
rufus-scheduler è un gioiello Ruby per la pianificazione di parti di codice (lavori).Capisce l'esecuzione di un lavoro A una certa ora, IN una certa ora, OGNI x volta o semplicemente tramite un'istruzione CRON.
rufus-scheduler non sostituisce cron/at poiché viene eseguito all'interno di Ruby.
e se funzionasse all'interno di Ruby?non posso accedere a cron usando il comando di sistema in Ruby?
Soluzione
Penso che rufus-scheduler sia per quelle persone che non si sentono a proprio agio nell'usare il sistema crontab
, at
O batch
.
cron
fa lavori ripetitivi/periodici e at
E batch
sono per lavori una tantum perché questi due comandi non supportano la ripetizione automatica dei comandi.
Quindi rufus-scheduler sta creando la funzionalità degli altri comandi, ma se ti senti a tuo agio con la riga di comando e con gli altri comandi, secondo me non ti fa guadagnare molto.
Non l'ho usato, ma ho esaminato la fonte e la mia preoccupazione è che sembra che rufus-scheduler si basi sui thread, il che significa che Ruby manterrà la tua app in esecuzione in background, in attesa del momento o dell'intervallo appropriato per l'esecuzione.Se il processo viene interrotto o la macchina si riavvia, sembra che il lavoro non verrà eseguito, il che rappresenta una differenza importante rispetto ai comandi del sistema che persisteranno dopo i riavvii o se l'app non è in memoria.
Usiamo molto cron al lavoro per i lavori;È uno strumento standard del settore e ogni computer Linux e Mac esegue lavori pianificati da cron durante tutto il giorno, anche se la maggior parte degli utenti non lo sa.
Altri suggerimenti
rufus-scheduler is a "in-ruby-process" scheduler. It is not meant as a cron/at replacement at all.
rufus-scheduler was not meant for people not comfortable with cron/at on the command line, it was meant for people willing to schedule stuff directly inside their ruby process (and understanding what it implies).
If rufus-scheduler was meant as a replacement for cron/at, it would provide some kind of persistence for the jobs, but it does not.
Another take on that : http://adam.heroku.com/past/2010/6/30/replace_cron_with_clockwork/