gpt4 book ai didi

python - 如何在 python/django 中 fork 进程?

转载 作者:太空狗 更新时间:2023-10-30 02:22:41 26 4
gpt4 key购买 nike

这更像是一个 Python 的一般问题,但是在 django 的上下文中。

现在我在 django 中有这个 View ,它必须处理大量数据。通常它需要服务器(nginx 和 django 在代理中运行)几分钟来完成。有时服务器超时。我不想增加 nginx 的超时时间。我意识到,如果我可以在 django View 中用 python fork 一个进程,以便 fork (子)进程将独立于 django View 进行所有数据处理,那么该 View 将能够立即将请求返回给用户(因此永远不会超时)并且子进程将继续在后台运行以完成所有计算。

问题来了:

我如何在 python 中 fork 一个独立的进程(如果可能的话,python 代码在同一个文件中)?如果可能,我如何为它分配一个 unix 进程优先级?

我查看了一些在 python 中 fork 进程的方法,似乎有几个选项。哪个最适合这种情况?

谢谢。

最佳答案

“最佳实践”答案是使用队列管理器,通常是 RabbitMQ 或任何由 Django-celery 处理的后端。

不过,还有一些较轻的选项确实会产生一个新线程。这些选项通常缺少某种方式来跟踪进度或控制线程数。

检查 Django-utils看看是否足够。如果没有,请选择 celery 。

关于python - 如何在 python/django 中 fork 进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9155487/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com