【发布时间】:2015-07-14 21:48:28
【问题描述】:
我在 python 中运行一个脚本并且需要很长时间来处理。问题是如果函数需要很长时间才能运行,我猜 nginx 在他的配置中有超时,这可以防止某种错误,并阻止函数完全运行。
我只想知道我是否可以增加超时值。因为我在 nginx 的 conf 文件中尝试了一些命令,例如:
uwsgi_connect_timeout 75;
uwsgi_send_timeout 75;
uwsgi_read_timeout 75;
keepalive_timeout 650;
但这些都不起作用。
提前考虑
【问题讨论】:
-
您的脚本需要多长时间才能运行?
75并不比默认的60多很多。基于the docs,uwsgi_read_timeout是您要更改的那个。 -
也很好奇你的脚本做了什么。您也许可以增加 nginx 的超时时间,但大多数用户不会停留那么久。
-
基本上是一个脚本,它运行一个有 500 个用户的数据库,并使用它使用地理编码,它为我提供了用户地址的经度和纬度。使用 thar 我插入 mongodb 集合。这是因为地理编码有时会失败,我必须多执行 3 次此过程才能知道所有用户的地理位置。
-
不过,很高兴知道如何防止 nginx 超时。我有一个在开发中使用的长时间运行的脚本,所以优化对我来说不是问题。我只想加载页面,但找不到防止 nginx 抛出 502 的神奇设置组合。