0


【nginx出现504错误的原因分析及解决】

项目场景:

nginx代理到后端应用(java)


问题描述

接口出现504 (Gateway Time-out)错误,即网关超时


原因分析:

1、接口响应慢,优化程序。
2、nginx的proxy超时时间配置,比如nginx配置的超时时间为60s,而后端应用需要100s才能返回。


解决方案:

通过本地排查发现,接口响应需要80s左右,而nginx配置的超时时间是65s。
由于历史原因,程序优化代价过大,所以采用增加nginx超时时间的方式。

先看下nginx使用的是什么协议(proxy/fastcgi):

(可以根据需求将以下配置加在http或server或location模块)

如果使用proxy_pass进行请求转发,那我们就配置proxy相关的参数:

proxy_connect_timeout    100;  #nginx跟后端服务器连接超时时间(代理连接超时)默认60s
proxy_read_timeout       100; #后端服务器数据回传时间(代理发送超时)默认值60s
proxy_send_timeout       100;  #连接成功后,后端服务器响应时间(代理接收超时)默认值60s

如果使用fastcgi_pass进行请求转发,那就配置fastcig相关的参数:

fastcgi_connect_timeout 1800s;#nginx跟后端服务器连接超时时间(代理连接超时)默认60s
fastcgi_send_timeout 1800s;#后端服务器数据回传时间(代理发送超时)默认值60s
fastcgi_read_timeout 1800s;#连接成功后,后端服务器响应时间(代理接收超时)默认值60s

修改完重启nginx生效

标签: nginx 前端

本文转载自: https://blog.csdn.net/qq_40253821/article/details/137038456
版权归原作者 举杯邀明月、 所有, 如有侵权,请联系我们删除。

“【nginx出现504错误的原因分析及解决】”的评论:

还没有评论