GNU/Linux >> Linux Esercitazione >  >> Linux

Pianificazione di un evento regolare:alternative Cron/Cron (incluso Celery)

Un modo semplice e non di Celery per affrontare le cose sarebbe creare comandi django-admin personalizzati per eseguire le tue attività asincrone o pianificate.

Poi, su Windows, usi at comando per pianificare queste attività. Su Linux, usi cron .

Consiglio vivamente anche di abbandonare Windows, se possibile, per un ambiente di sviluppo. La tua vita sarà molto migliore su Linux o anche su Mac OSX. Ad esempio, riutilizza una macchina di riserva o vecchia con Ubuntu o esegui Ubuntu in una VM sulla tua macchina Windows.


Django Chronograph è un'ottima alternativa. Devi solo configurare un cron, quindi fare tutto in django admin. Puoi programmare attività/comandi dalla gestione di Django.


Ho avuto lo stesso problema e ho trattenuto il tentativo di risolverlo con celery (troppo complicato) o cron (esterno all'applicazione) e ho finito per trovare Advanced Python Scheduler. Ha appena iniziato a usarlo, ma sembra ragionevolmente maturo e stabile, ha una documentazione decente e richiederà una serie di formati di pianificazione (ad es. stile cron).

Dalla documentazione, esecuzione di una funzione a un intervallo specifico.

from apscheduler.scheduler import Scheduler
sched = Scheduler()
sched.start()
def hello_world():
    print "hello world"
sched.add_interval_job(hello_world,seconds=10)

Questo non è bloccante e eseguo qualcosa di abbastanza identico semplicemente importando il modulo dal mio urls.py . Spero che questo aiuti.


https://github.com/andybak/django-cron

Attivato da una singola attività cron, ma tutta la programmazione e la configurazione vengono eseguite in Python.


Linux
  1. Utilizzo di uno script Cron Wrapper

  2. Risoluzione dei problemi di Cron Jobs

  3. Utilizzando Notifica-Invia con Cron?

  4. Utilità di pianificazione eventi MySQL

  5. Come impostare un cron job per eseguire un eseguibile ogni ora?

Come impostare un Cron Job in Linux

Pianificazione di Cron Jobs con Crontab

Come elencare i lavori Cron in Linux

Pianificazione delle attività di sistema con Cron su Linux

Una guida per principianti a Cron Jobs

Programmazione con cron &At