http状态码 502.504,499(转)

 

502: bad gateway, 
表象:从上游服务接收到无效响应
原因:请求提交给网关如php-fpm,由于某些原因导致php-fpm进程终止执行,与网关服务php-fpm配置有关
主要配置:max_children: 最大子进程数,在高并发达到最大响应数,后续请求会502(可通过netstat命令查看当前连接数)
request_terminate_timeout:设置单个请求的超时时间, 超时请求终止时,也会出现502
另外:积累大量请求,数据库进程locked,死锁导致超时,也会导致502

504 gateway timeout 
表象:等待响应超时,未能及时从上游服务收到响应
原因:与nginx.conf配置有关
fastcgi_connect_timeout: 连接超时,默认60s
fastcgi_send_timeout: nginx发送fastcgi超时时间, 默认60s
fastcgi_read_timeout: fastcgi响应nginx超时时间, 默认60s
另外:fastcgi缓存区太小会导致fastcgi进程被挂起,从而也会演变为504

499 client has closed connection
服务端响应时间过长,客户端“不耐烦”,主动关闭连接
可以通过 proxy_ignore_client_abort 值为on 不允许关闭客户端连接(client指nginx)

问题排查汇总:
502: max_children, request_terminate_timeout; 数据库; 网关服务是否启动;
504: 程序在处理大量数据,导致等待超时;程序调用外部请求,而外部请求响应超时;连接数据库失败,而没有停止,死循环新连;

  

 

端口检查:
$ ps -ef |grep java #检查进程是否在
$ sudo netstat -lntp |grep PORT #检查端口有没有起来
$curl -I 127.0.0.1:PORT/health #应用健康检查测试下,Your health check path


https://blog.csdn.net/fdipzone/article/details/79355576
https://www.cnblogs.com/coding-wtf/p/7989905.html

https://blog.csdn.net/wangtingting_100/article/details/81106767

posted on 2020-09-22 11:40  wangsong412  阅读(689)  评论(0编辑  收藏  举报