nginx出现504 Gateway Time-out错误的原因分析及解决

1、查看公网带宽是否被打满

2、查看网络是否有波动(可以在nginx上ping后端服务,看是否有丢包情况)

3、查看服务器资源使用情况(cpu、内存、磁盘、网络等)

4、查看nginx日志,具体到哪个服务的哪个接口访问504

tail -f /var/log/nginx/access.log|grep -w 504
在这里插入图片描述

5、elk或直接登录到服务器查看服务日志

在这里插入图片描述

从上面可以看出,出现504 Gateway Time-out错误的原因是后端接口响应超时(68s左右),nginx的proxy超时时间配置默认超时时间是60s

解决:

1、临时调整nginx配置

在对应location段添加一下配置

	proxy_pass http://backend;
	proxy_connect_timeout    100s; 
	proxy_read_timeout       100s; 
	proxy_send_timeout       100s; 

2、找对应开发人员,检查下应用那块有什么耗时的操作,看接口是否有优化空间

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐