hook_cron..... secondo me è un po limitato

6 contenuti / 0 new
Ultimo contenuto
hook_cron..... secondo me è un po limitato

O meglio, il sistema di cron di drupal, per quanto evoluto, ha dei limiti. Ho sviluppato un modulo che dovrebbe eseguire delle azioni ad intervalli regolari di 20 sec.
Se creo l'hook.cron nel modulo, alla fine mi ritrovo costretto ad inserire il cron.php con un esecuzione di 20 sec. Di conseguenzai tutti gli eventi del cron di drupal, verranno eseguiti ad intervalli di 20 sec (con tutti i problemi che ne derivano se le azioni diventano tante oppure onerose). L'alternativa è creare un menu di callback in cui metto le azioni da eseguire e mettere quello nel cron di linux (esempio /usr/bin/lynx -source http://example.com?q=/modulo/cron ).... ok, questa è una soluzione..... forse l'unica soluzione possibile.

Che ne pensate?

Ciao
Gianni

Il mio crontab è pieno di script di aggiornameti per vari moduli, è l'unica soluzione per non sprecare risorse ed essere sicuro non pasticciare i dati!!
Fai benissimo!!

Ciao Uccio

PS: Crontab con la precisione dei secondi non ne conosco, si puo fare con il cron standard??
PS: la soluzione con wget mi piace di più!! :-)

Quote:
Il mio crontab è pieno di script di aggiornameti per vari moduli

Allora non son l'unico a scontrarmi con questo problema :-)

Quote:
Crontab con la precisione dei secondi non ne conosco, si puo fare con il cron standard??

Con il crontab no, ma con uno script o programmino fatto appositamente sì :-)
La soluzione wget è sicuramente migliore.... se non altro perchè si trova in tutte le distro, installata quasi sempre di default..... il problema sono io che come al solito lo utilizzo per scaricare file all'interno di script, per scaricare iso, file gpg.... ma poi mi dimentico delle altre sue 1000 funzioni :-)

Ciao e grazie

Gianni

Ora non so cosa devi fare ogni 20 sec, ma mi preoccuperebbe un pò ;)
In ogni caso hai provato mettere la pagina in un loop infinito e dargli uno sleep di 20 secondi (sempre se chi amministra il server te lo lascia fare)? Se posso permettermi a che ti serve una pagina richiamata ogni 20 (venti!!!) secondi?

Ciao
Marco
--
My blog
Working at @agavee

Legge gli sms che arrivano da clienti, all'interno di un locale...... o meglio, legge i dati già trasferiti sul database da un demone e li tratta di conseguenza (anche amministrarli tramite web da remoto EVENTUALMENTE). Quindi server locale, nessun ISP, una semplice rete locale :-)
20/30 secondi son più che sufficenti per permettere a quello script di agire in tempi brevi alle richieste dell'utente (due query + eventuale comando da shell)..... poi, ci stà che la gente si accontenti anche di un minuto e così uso il crontab.... vedremo come risponde il tutto. Al momento sono ai test, ma meglio prevedere i casi estremi per non avere problemi in seguito ;-) )

Ciao
Gianni

Per uno script con un tempo di latenza così basso non userei mai una funzione di Drupal. O al massimo proverei con actions, ma mi sembra esagerato. Non so.