【发布时间】:2013-06-10 11:20:03
【问题描述】:
我正在使用 django ORM 作为 celery 代理,当我在任务完成之前安排任务并杀死 celery 工人(通过按 ctr+c)并再次重新启动 celery 时,它不会恢复所有任务!为什么会这样?,我认为 django ORM 是用于 celery 任务存储的持久代理 .. 我在这里想念什么?
【问题讨论】:
标签: django message-queue celery django-celery
我正在使用 django ORM 作为 celery 代理,当我在任务完成之前安排任务并杀死 celery 工人(通过按 ctr+c)并再次重新启动 celery 时,它不会恢复所有任务!为什么会这样?,我认为 django ORM 是用于 celery 任务存储的持久代理 .. 我在这里想念什么?
【问题讨论】:
标签: django message-queue celery django-celery
实际上使用 Django 作为 celery 的代理是你能做的最糟糕的事情,因为它非常慢,并且在任何类型的失败后再次启动时无法恢复所有任务,不知道为什么,虽然它是使用 DB 存储和跟踪所有内容。
我使用了 RabbitMQ,它的工作原理就像一个魅力......更快、更强大,并且可以在工作人员宕机和再次启动时恢复所有任务。
但我仍然希望知道为什么 Django ORM 不做持久化:)
【讨论】: