502 errors and request_time

Maxim Dounin mdounin at mdounin.ru
Mon Nov 30 15:00:48 UTC 2015


Hello!

On Sat, Nov 28, 2015 at 03:02:33PM +0800, Shi wrote:

> Hi:
> 
> I've found 2 kinds of 502 errors in my server:
> 
> connection reset by peer, it happens as request_time reach to 10s.
> 
> connection timeout, it happens as request_time reach to 3s.
> 
> Server is:
> 
> centos , kernel(2.6.32)
> 
> php5.2 php-fpm
> 
> nginx 1.6.3.
> 
> access logs outputs:
> [28/Nov/2015:14:41:08 +0800] "GET /ben2.php HTTP/1.1" 502 172 "-" "Apache-HttpClient/4.2.6 (java 1.5)" "-" 3.000
> 
> [28/Nov/2015:14:41:11 +0800] "GET /ben2.php HTTP/1.1" 502 172 "-" "Apache-HttpClient/4.2.6 (java 1.5)" "-" 10.000
> error logs:
> 2015/11/28 14:41:11 [error] 12981#0: *798323 recv() failed (104:  Connection reset by peer) while reading response header from upstream,  client: xx.xx.xx.xx, server: xx.xx.xx, request: "GET /ben2.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "xx.xx.xx"
> 
> 2015/11/28 14:41:08 [error] 12981#0: *798215 connect() failed (110: Connection timed out) while connecting to upstream, client: xx.xx.xx.xx, server: xx.xx.xx, request: "GET /ben2.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "xx.xx.xx"
> 
> 
> 
> I've tried "request_terminate_timeout, fastcgi_connect_timeout, fastcgi_read/write_timeout", but no help.
> 
> What can I do next step ?

The "connection reset by peer" means that the connection was 
terminated by your backend, not by nginx.  There isn't much you 
can do on nginx side.  Consider checking php-fpm logs instead, may 
be you are hitting some limit like execution time limit or 
something.

The "connection timed out" means that nginx wasn't able to connect 
to the backend in time, fastcgi_connection_timeout is something 
you can tune - though the default is 60s, and it should be big 
enough for normal use.  Again, consider looking into your backend 
to find out why connection takes so long - likely it's overloaded 
and can't process connection requests in time.

-- 
Maxim Dounin
http://nginx.org/



More information about the nginx mailing list