| 504 | 网关等上游超时:上游还在算或已卡住 |
|---|---|
| 499 | 客户端先断开:多为其读超时更早到点 |
| 排队等待 | 并发超容量:请求在队列里耗掉预算 |
| 生成超时 | 长输出或慢解码:单请求超预算 |
定界证据
定界证据
tail -n 200 <nginx错误日志> | grep 'upstream timed out'
grep ' 499 ' <nginx访问日志> | tail -5
curl -s http://127.0.0.1:8000/metrics | grep -E 'num_requests_waiting|time_to_first_token'- 分层预算:客户端读超时 > 网关 proxy_read_timeout > 单请求处理时间上限
- SSE 场景保持心跳并关闭中间层缓冲,避免空闲连接被掐断
- 队列造成的等待在容量侧解决:改超时只是把失败方式换个样子