Python 重启芹菜会导致重复任务吗?

Python 重启芹菜会导致重复任务吗?,python,django,redis,celery,django-celery,Python,Django,Redis,Celery,Django Celery,我有一个芹菜电子邮件任务,预计从现在起10天内完成()。然而,我发现有些人一次收到5-6封重复的电子邮件。我以前遇到过这个问题,因为BROKER\u TRANSPORT\u选项设置得太低。现在,我的设置文件中有以下内容: BROKER_TRANSPORT_OPTIONS = {'visibility_timeout': 2592000} #30 days 所以这应该不再是个问题了。我只是想知道是不是还有别的原因。i、 重启芹菜。芹菜每次我部署新代码时都会重新启动,每周可能会发生5次或更多次,所

我有一个芹菜电子邮件任务,预计从现在起10天内完成()。然而,我发现有些人一次收到5-6封重复的电子邮件。我以前遇到过这个问题,因为BROKER\u TRANSPORT\u选项设置得太低。现在,我的设置文件中有以下内容:

BROKER_TRANSPORT_OPTIONS = {'visibility_timeout': 2592000} #30 days
所以这应该不再是个问题了。我只是想知道是不是还有别的原因。i、 重启芹菜。芹菜每次我部署新代码时都会重新启动,每周可能会发生5次或更多次,所以这是我唯一能想到的事情

有什么想法吗


谢谢。

如果工作进程/节拍进程没有正确停止,任务复制是可能的。如何重新启动芹菜工人/节拍?检查服务器是否有僵尸芹菜工人和beat进程。尝试停止所有芹菜进程,检查芹菜进程是否存在,然后重新启动。毕竟,检查
ps ax | grep芹菜
是否显示新鲜工人和仅显示一次跳动。

如果设置
芹菜| ACKS | LATE=False,如果工人停止不正确,任务将不会重新启动。在这种情况下,任务在消费后立即标记为已确认。看

还要确保您的任务没有启用“重试”
。如果任务内部发生任何异常,它们可能会使用相同的输入参数重试


另一种可能的情况-您的任务写入错误,每次运行都会选择相同的收件人集。

您使用的是哪个代理,您能看到排队的任务吗?@AndrewS我使用的是redis。是的,我可以看到任务排队。单子很长,所以光看就很难看出有什么问题。我在监督下经营芹菜。我使用的命令是supervisortl restart芹菜。谢谢,我稍后会看的。所以我刚检查过。只有一个进程正在运行。supervisord启动脚本也是这样的:
/envs/flavourly/bin/python/envs/flavourly/bin/芹菜--app=flavourly.芹菜:app-worker-P-gevent--concurrency=10--loglevel=INFO