nginx 502 超时错误解决(java版本)

问题:一个数据分析系统,数据量过大,上亿,用nginx部署后,发现如果每次只要点击统计数据时,只要是时间超过1分钟,就会报ngnix502 bad gateway 问题,郁闷了很久。

解决:终于有天找到了官方的完成的配置文件,在结合网上查询的东西,只要在配置文件中稍加修改即可。

 

推荐大家看看官方完整配置http://wiki.nginx.org/NginxChsFullExample2

 

原配置文件:


server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


以上配置文件,下载下来的默认配置文件,nginx延长请求的时间在:location中增加:

 

修改后配置文件:

	location / {
		....省略
		proxy_connect_timeout      300;#延长为300秒,默认60秒
		proxy_send_timeout         300;#延长为300秒,默认60秒
		proxy_read_timeout         300;#延长为300秒,默认60秒
	}