nginx问题的排查方法
nginx问题的排查方法
当出现直接超时、处理返回慢时的报警时,nigix侧的故障排查参考方法有如下: 1、检查请求日志情况, tail -f logs/access.log ,看upstream_status字段。
200:表示正常;
502/503/504:表示处理慢,或者后端down机;再看upstream_response_time返回的时间是否真的较慢,有没有上百毫秒,或更高的,有则说明是后端服务有问题。
404:表示请求的路径不存在或不对,文件不在了。查看客户端请求路径是否正确, 服务器上的文件、程序是否存在。
403:表示无权限访问。 检查一下nginx.conf 是否有特殊的访问配置。
499: 则是客户端的问题,或者代理上游服务器时间超时,代理主动关闭连接 此错误少见。
2、检查错误日志情况,tail -f logs/error_log ,查看是否有connect() failed、Connection refused、 Connection reset by peer等error错误日志,有则说明有可能nginx出现的连接数超负载等情况。
(1)查看系统的网络连接数情况确认是否有较大的链接数
# netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
解析: CLOSED //无连接是活动的或正在进行
LISTEN //服务器在等待进入呼叫
SYN_RECV //一个连接请求已经到达,等待确认
SYN_SENT //应用已经开始,打开一个连接
ESTABLISHED //正常数据传输状态/当前并发连接数
FIN_WAIT1 //应用说它已经完成
FIN_WAIT2 //另一边已同意释放
ITMED_WAIT //等待所有分组死掉
CLOSING //两边同时尝试关闭
TIME_WAIT //另一边已初始化一个释放
LAST_ACK //等待所有分组死掉
(2)查看系统的句柄配置情况,ulimit -n ,确认是否过小(小于请求数)
(3)worker_rlimit_nofile、worker_connections配置项,是否过小(小于请求数)
最后更新于 2018-08-27 09:28:40 并被添加「」标签,已有 4683 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处