<p>le battement de céleri ne fonctionne pas, mais le travailleur de céleri --battre fonctionne, lors de l'utilisation de la base de données</p>

Créé le 25 mai 2014  ·  3Commentaires  ·  Source: celery/celery

Céleri 3.1.11

paramètres.py

# Celery transport
BROKER_URL = 'django://'
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
from celery.schedules import crontab

CELERYBEAT_SCHEDULE = {
        'every-minute': {
            'task': 'tasks.sync_oracle_history',
            'schedule': crontab(minute='*/1'),
            },
        }

dans le dossier project.apps.proj, ajoutez un fichier tasks.py

from __future__ import absolute_import
from celery import task

@task(name='tasks.sync_oracle_history')
def sync_oracle_history():
    print "="*30
    print "TODO: sync_oracle_history pending"

aucune idée, tout conseil pour moi est le bienvenu.

dans bash shell, lors de l'exécution de la commande : celery beat -A proj -l info, envoyer uniquement à la file d'attente, sans exécuter la tâche,
mais changez la commande celery worker -A proj -l info, la tâche se déclenchera.

Commentaire le plus utile

Beat n'exécute pas de tâches, il envoie simplement les messages. Vous avez besoin à la fois d'une instance de battement et d'une instance de travailleur !

Tous les 3 commentaires

Beat n'exécute pas de tâches, il envoie simplement les messages. Vous avez besoin à la fois d'une instance de battement et d'une instance de travailleur !

merci @ask

Salut, comment puis-je faire pour ne pas utiliser ces commandes à chaque fois que je veux exécuter les tâches ? @xiaods @ask

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

budlight picture budlight  ·  3Commentaires

synthead picture synthead  ·  3Commentaires

keisetsu picture keisetsu  ·  3Commentaires

aTylerRice picture aTylerRice  ·  3Commentaires

steinliber picture steinliber  ·  3Commentaires