Crontab tutorial. Gestiamo una mailing list
Crontab o cron è acronimo di un servizio molto utile che puoi trovare su alcuni host. Serve per schedulare l’esecuzione di determinate attività da eseguire ad un certo orario, piuttosto che ad intervalli regolari . L’uso più comune che se ne fa è quello di inviare una mail ai propri lettori, piuttosto che schedulare il backup di determinati dati.
Solitamente, crontab usa un demone, denominato crond, che è costantemente in esecuzione in background e, una volta al minuto, legge i contenuti del registro dei comandi schedulati ed esegue quelli per cui si è esaurito il periodo di attesa. Un comando mandato in esecuzione da crontab viene chiamato cronjob.
Con questo articolo cercherò di rendere il crontab un pò più semplice e familiare ed utilizzabile anche nei tuoi progetti, sempre che sia supportato dal tuo hosting.
Andando sul Control Panel, trovi un’icona chiamata Cron job. Ti verrà chiesto se vuoi operare in modalità standard oppure in modalità Advanced (Unix Style). Ti consiglio quella standard, perchè più intuitiva e ti permette di fare le stesse cose di quella avanzata.
Come puoi vedere dalla figura, devi solo inserire il comando da eseguire nel campo Command to run e poi scegliere ogni quanto tempo vuoi che venga eseguito. La configurazione è divisa in minuti, ore, giorni settimane e mesi. Puoi per tanto dettagliare molto bene il periodo di esecuzione. In questo caso si è scelto di eseguire ogni giorno alle 6 del pomeriggio lo script in php che si preoccupa di mandare una mail agli utenti.
Ora diamo un’occhiata alla versione advanced.
Come puoi vedere ci sono gli stessi parametri da configurare, ma in modalità Linux. L’asterisco significa “ogni” il numero significa “alle” e l’asterisco seguito dalla barra indica “ogni x periodo“. Ho anche trovato una guida che approfondisce la configurazione del crontab su Linux, che t’invito a leggere.
Nel prossimo articolo ti farò vedere come costruire un database per gestire la tua lista di contatti.




sabato 28 marzo 2009 08:27
[...] Jobs per schedulare l’esecuzione di determinati applicativi ad intervalli regolari (ad esempio per creare la tua mailing [...]