在Django中使用celeybeat本地设置的正确方法是什么



Im使用django 1.8.7,django芹菜3.1.17。我想覆盖local_settings中的celener周期性任务,它包含在基本设置文件的末尾。

本地设置文件中的此代码不起作用:

BROKER_URL = 'amqp://test:test@localhost/'
CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler"
CELERYBEAT_SCHEDULE = {
    "test_task": {
        "task": "test.ptask",
        "schedule": crontab(minute="*/5"),
        "options": {'queue': 'slow_tasks'}
    }
}

当您直接调用芹菜时,它将不服从django settings.py。而是使用呼叫

manage.py celery -A test worker -l warn -Q slow_tasks --concurrency=10

请注意,您应该将django芹菜添加到INSTALLED_APP中。

还请查看此页面:http://docs.celeryproject.org/en/latest/tutorials/daemonizing.html#generic-initd-celeybeat django示例

问题也出现在CELERYBEAT_SCHEDULER="djcele.schedulers.DatabaseScheduler"中。周期性任务存储在数据库中,所以您只需要从管理面板中删除它们。

相关内容

  • 没有找到相关文章

最新更新