Django 具有繁重的计算和长运行时间 - 离线计算并发送结果



我有一个 django 应用程序,用户在其中发送请求,服务器执行一些 SQL 查找,然后对结果进行计算,最后向用户显示结果。

SQL 查找和之后的计算可能需要很长时间,也许是 30+ 分钟。我看到一些网页在这种情况下要求发送电子邮件,然后稍后向您发送URL。但我不确定如何在 django 中做到这一点,或者在这种情况下是否有其他选择。任何指针都会非常有帮助。

(对不起,但正如我所说,这是一个相当普遍的问题,我不知道如何为此提供最小可运行代码(

实现此目的的一种方法是使用类似 Celery 的东西,这是一个分布式任务队列。处理任务将进入队列(同步或异步(,它将调用一个函数向用户发送电子邮件,提醒他们在任务完成时已准备就绪。

文档:https://docs.celeryproject.org/en/stable/django/first-steps-with-django.html

最新更新