Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
PM2 list 全是 online,pm2 logs 也没明显报错,但 Nginx 返回 502。这个状态到底信谁?
pm2 logs
信用户路径。PM2 online 只说明进程没退出,不说明端口监听、路由、依赖都正常。
本机 curl 端口有时通,有时 connection refused。
看应用是不是启动后才绑定端口。PM2 可能进程在线,但应用还在初始化或卡住。
配 wait_ready 或启动探针可以减少误判,但仍要有外部健康检查。
wait_ready
Nginx upstream 配的是旧端口吗?我踩过 PM2 env 改了端口,Nginx 没改。
端口没错。看日志发现启动卡在 Redis 连接重试。
那 PM2 状态就是典型假阳性。依赖连不上时,应用应该不要对外宣称 ready。
用户看到 502,也说明错误页没兜住。至少要有维护页或稍后重试提示。
但别把维护页当修复。502 根因还是 readiness 和依赖。
已改成 Redis 不可用时启动失败,并让 PM2 重启告警。
还要 Nginx upstream fail timeout 配合理,不然短抖动会放大。
复盘里写清:进程状态、端口状态、业务状态是三层,不能混用。
你好!看起来您对这段对话很感兴趣,但您还没有一个账号。
厌倦了每次访问都刷到同样的帖子?您注册账号后,您每次返回时都能精准定位到您上次浏览的位置,并可选择接收新回复通知(通过邮件或推送通知)。您还能收藏书签、为帖子顶,向社区成员表达您的欣赏。
有了你的建议,这篇帖子会更精彩哦 💗