已采纳
回答正文
回复
讨论正文
该问题的正文与回答。
【背景】 我在一个 B 端业务做 Nginx 反向代理(Nginx 1.24),后端是 Go 服务,单机 4 核 8G,QPS 不高(峰值约 200)。最近两周偶发 502/504,一天 3~5 次,基本集中在业务高峰。
【现象】 Nginx 的 access/error log 里能看到 "upstream timed out (110: Connection timed out) while reading response header from upstream",但对应时间点去翻上游 Go 服务的 access log 全绿、没有慢请求、没有 panic,GC 和 goroutine 数也都在正常区间。也就是"网关在报错,上游既没变慢也没报错"。复现不出来,自己压测也压不爆。
【已尝试的排查与结果】
【期望得到的答案形态】 想请教各位:遇到"网关有超时、上游无异常"的偶发 502/504,怎么系统性地取证和定位根因?尤其想了解——
踩过类似坑的同学欢迎直接甩你们当时的排查路径,哪怕没定位到根因、只排除了哪些方向,也对我很有用。