为什么我的定期任务在不运行?

2024-10-01 11:31:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我在用django+芹菜做定期任务。我的项目有django celery==3.1.17,使用的代理是Redis,它正在工作。在

在我的设置文件中:

CELERYBEAT_SCHEDULE={
    'delivery_send': {
        'task': 'delivery.tasks.DeliverySendTask',
        'schedule': timedelta(minutes=1),
        'args': [],
    },
}

CELERY_ROUTES = {
    'delivery.tasks.DeliverySendTask': {
        'queue': 'periodic_tasks',
        'routing_key': 'periodic_tasks'
    }, 
}

有更多的芹菜设置,但我想这两个是最相关的问题。在

任务:

^{pr2}$

然后我运行python manage.py celery beat并在控制台中看到

[2016-06-23 14:32:01,230: INFO/MainProcess] Scheduler: Sending due task delivery_send (delivery.tasks.DeliverySendTask)

但删除操作从未实际执行过。我错过了什么?在

谢谢你的帮助。在


Tags: 文件项目djangoredissend代理tasktasks
2条回答

也装芹菜。那就别跟他跑了管理.py. 这样运行:

celery -A your_app_name worker -l info -B -E

所以没有了Python管理.py在

芹菜拍不执行任务。只将任务调度到队列中。celery worker执行任务。在

要定期执行任务,必须同时启动celery beat和{}。在

python manage.py celery beat
python manage.py celery worker

相关问题 更多 >