ngx1.4.1 upstream keepalive 日志超时问题
ngx前端机器配置 用户用https访问
location / {
proxy_pass http://testbackend;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_read_timeout 30s;
proxy_http_version 1.1;
proxy_buffering off;
proxy_set_header Connection "keep-alive";
proxy_set_header Host $host;
}
upstream testbackend {
ip_hash;
server 10.0.0.3;
server 10.0.0.7;
keepalive 500;
}
前端ngx纯代理用,后段服务是ngx+lua,http的
但业务大的时候出钱奇怪现象;
错误日志里面不断出现下面这个
[error] 9117#0: *18594662 upstream timed out (110: Connection timed out) while reading upstream
访问日志里面, 请求很多是 30s 【proxy_read_timeout 30s;】
如果 proxy_read_timeout 改成 300s,则访问日志,里面很多请求是 300s
后段ngx每个请求都很快。小于1s
但是实际客户端看请求也很快。小于1S
这个对业务实际没有影响,但是 这个错误很多,长连接就无效了。不知道是不是ngx https的bug,
前端改成这样,则日志一切正常,很奇怪
location / {
proxy_pass http://testbackend;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_read_timeout 30s;
proxy_http_version 1.0;
proxy_buffering off;
#proxy_set_header Connection "keep-alive";
proxy_set_header Host $host;
}