当我运行 syncdb 时,我注意到创建了很多表,例如:
django-kombu 正在提供传输,因此它与实际队列无关。即使我运行任务,我仍然看不到这些表中的任何内容。这些表是干什么用的?仅用于监视目的——如果我启用它?
如果是这样,如果我查找 AsyncResult(),我猜这实际上是通过 django-kombu 表而不是 djcelery 查找任务结果也是真的吗?
谢谢。
最佳答案
celery task_state 表由守护进程 celerycam 填充,仅用于监控目的。
其他表,如“crontabschedule”“intervals”等,用于使用 django 后端数据库调度周期性任务。当您以节拍模式 (-B) 启动 celery 以及在设置中设置此变量时,将使用这些表
CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler"
通过这种方式,您告诉 celery 将 django db 用于计划任务。
关于django - django-celery (djcelery) 表有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6084009/