|
|
1
3
Django不是一个web服务器,它是一个web框架,因此正如您所说,它生成线程来处理传入的请求,但web服务器的任务是接受并最终响应用户的[http(s)]请求。
连接器 了解WSGI,因为这些人大多使用 古尼科恩 , , 修改wsgi 等等。您还需要将它们配置为接受更长的超时值。 例如,如果您正在使用Nginx/Gunicorn,可以参考 this question 看看你如何设置超时。 Celery 在这种情况下,它是一个非常方便的工具。 在您的情况下,如果计算量不大,您可以简单地增加超时值。但是,如果您的计算可能需要很长时间,比如45秒以上,那么最好更改您的处理方式,并使用芹菜和请求的后台处理实现解决方案。 编辑 如果你想知道到底是谁在处理线程以及幕后发生了什么,我鼓励你阅读 this posting 关于Gunicorn,因为它对事物的工作方式有很好的洞察力。此外,在 design page of Gunicorn 如果您的django线程更快超时(gunicorn超时),那么WSGI程序将终止该线程。另一方面,如果gunicorn的超时设置高于Nginx的超时,Nginx将终止线程。 |
|
|
gauri · 使用PHP 7.2和Xdebug 2.0设置远程调试 2 年前 |
|
Yogesh · Nginx未按预期重定向域 2 年前 |
|
|
Harvinder Singh · Nginx反向代理的问题行为 3 年前 |
|
|
g491 · 是什么让Express成为框架而不是web服务器? 8 年前 |
|
|
Spedwards · 无法从外部网络访问XAMPP Web服务器 8 年前 |
|
|
wuchuheng · 是否可以使用JavaScript收发电子邮件? 8 年前 |