我用Nginx+Django+FastCGI跑一个服务,是要处理一个巨大的XML,犹豫文件太大,处理比较慢,爬到一半就超时了。
我改了Nginx的配置,原来是60,改到120,但貌似没效果,还是60s超时。
location ^~ /api/ { proxy_read_timeout 120; proxy_connect_timeout 120; fastcgi_pass 127.0.0.1:8080; }
还有别的哪里要改吗?
黄舟2017-05-16 17:31:42
应该用:
fastcgi_read_timeout 600; fastcgi_send_timeout 600;
这两个选项.
fastcgi_read_timeout是指fastcgi进程向nginx进程发送response的整个过程的超时时间
fastcgi_send_timeout是指nginx进程向fastcgi进程发送request的整个过程的超时时间
这两个选项默认都是秒(s),可以手动指定为分钟(m),小时(h)等.
PHPz2017-05-16 17:31:42
对于这样花较长事件处理的页面最好改成异步处理,Nginx的连接时间好像不能超过75秒.
fastcgi_connect_timeout 75; fastcgi_read_timeout 120; fastcgi_send_timeout 120;
http://wiki.nginx.org/HttpFastcgiModu...