3

我在 python 中运行一个脚本并且需要很长时间来处理。问题是如果函数需要很长时间才能运行,我猜 nginx 在他的配置中有超时,这可以防止某种错误,并阻止函数完全运行。

我只想知道我是否可以增加超时值。因为我在 nginx 的 conf 文件中尝试了一些命令,例如:

uwsgi_connect_timeout 75;
uwsgi_send_timeout 75;
uwsgi_read_timeout 75;
keepalive_timeout 650;

但这一切都没有奏效。

提前致谢

4

3 回答 3

1

仅延长超时时间的问题在于,无论您将其设置多长时间,您都会在某个地方遇到限制。使用网络服务器、浏览器或您的地理编码调用。如果它在请求中经常失败 n 次,那么您就无法真正做出任何保证。

因此,与其让客户端请求挂在一个长时间运行的进程上(并且通过扩展冒着服务器超时的风险),为什么不使用celery之类的东西来运行这些地理编码任务并在客户端提交您的客户端请求通过 javascript 并通过ajax轮询服务器以获取答案,直到得到响应?

于 2011-10-01T00:25:31.543 回答
0

我在 NGIX + uWSGI 配置中也遇到了 Bad gateway 错误,并且为了谷歌这个问题的人:它可能缺少 uwsgi python 插件。请参阅:uWSGI 配置问题:uwsgi 失败且没有任何错误消息。.

于 2012-10-07T15:44:56.223 回答
0

我尝试了上述回复中以及其他地方所写的所有内容,但没有奏效。

我的解决方案是在 uwsgi.conf 和 nginx.conf 文件中更改我的套接字。

于 2015-07-14T13:48:28.703 回答