如何使用芹菜添加网络请求以排队?

时间:2019-10-12 12:16:43

标签: django celery

我集成了django-celery-beat,它工作正常,这意味着我可以在一段时间后注册并执行任务。但是我的客户想要的是将Web请求排队。这意味着,例如,如果有两个用户访问该网站,并且两个人都想生成报告,则第二个用户请求将进入队列并等待第一个请求的完成。

我不确定芹菜是否有可能。我试图找到解决方案,但没有成功。谁能帮我这个忙。我只需要想法或一些示例脚本。谢谢

1 个答案:

答案 0 :(得分:0)

这对于芹菜很有可能。您可以将某些报告强制发送到特定的routing exchange,然后使用-Q标志将该路由交换/芹菜队列映射到特定的芹菜工作者,然后将其设置为一次仅消耗一项任务。这需要一些工作和一些配置,但是可以做到。  确保使用correct settings for reserving one task at a time