每次重新启动芹菜时,都会确认所有计划任务



每次重新启动芹菜时,都会再次确认所有计划任务。

这导致了开始处理新任务的巨大时间滞后。

我们该如何解决这个问题?

您可以在再次启动 Celery 之前简单地清除所有任务:

$ celery purge
WARNING: This will remove all tasks from queue: celery.
         There is no undo for this operation!
(to skip this prompt use the -f option)
Are you sure you want to delete all tasks (yes/NO)? 

如果您不想清除队列中等待执行的任务,即您还希望它们执行,那么显然这些旧任务将在新任务之前执行,因为新任务在旧任务之后进入队列,并且因为它是队列,它将遵循先进先出

现在,如果您希望执行旧任务,

又不想等待旧任务先执行,根据我的理解,您不想清除任务,也不想延迟,那么您可以为任务维护两个或多个单独的队列

因此,在每次重新加载时,您的新任务将被分配给一个新的 QUEUE,该队列将不依赖于旧任务。

看到这个 -> 如何保持多个独立的芹菜队列?

最新更新