1

Celery 用户指南建议在调用任务进程之前手动提交 Django 事务。

http://celery.readthedocs.org/en/latest/userguide/tasks.html#database-transactions

我希望系统尽可能可靠。从事务提交和调用任务之间的崩溃中恢复的最佳实践是什么(即确保在事务提交时始终调用任务)。

顺便说一句,现在我正在使用我实现的基于数据库的作业队列,所以没有这样的问题——我可以在事务中发送作业。我不太确定是否应该改用 Celery。

4

1 回答 1

0

从 django 1.9 开始添加

transaction.on_commit(lambda: add_task_to_the_queue())
于 2019-06-28T00:17:02.460 回答