502 bad gateway 顾名思义 网关错误 后端服务器tomcat没囿起来应用服务的问题(前提是接入层7层正常的情况下)。
应用服务问题一种是应用本身问题;另一种是因为依赖服务问题比如依赖服務RT高依赖的服务有大的读取(mysql慢查,http等)以至于调用方超过超时read时间;服务集群压力大时,也会出现502超时(502理解为不可响应或响应不過来其实还是不可响应)。
504 gateway time-out 顾名思义 网关超时 一般计算机中的超时就是配置错了此处一般指nginx做反向代理服务器时,所连接的服务器tomcat无響应导致的
从网络角度,502已经与后端建立了连接但超时;504与后端连接未建立,超时
1、必现502,应用“挂了”
(1)后端机器上检查:
(2)上面都正常看下接入层access.log有没有进来。
(1)CPU使用率高QPS增加
考虑有大流量,后端压力导致短暂不可用考虑临时扩容。
(2)检查应用本身nginx read超时时间配置
如果某些正常请求耗时在2s左右那么会有少量大于2s的请求是502的。可以试着把上面耗时时间调大看问题是否缓解。优化本身链路请求耗时是根本上的解决办法