Nodejs 问题排查

前言

用于记录在使用 node 过程中遇到的问题,并尝试寻求解决方案。

问题

问题1

问题描述

访问前端页面时,页面返回 502/504。查看日志后发现,在一些出现问题的时间节点,会出现以下日志:

javascript 复制代码
epoll_wait() reported that client prematurely closed connection while reading upstream

翻译为:

报告客户端在读取上游时过早关闭连接

其实前端常见的 502/504 一般是请求接口时存在超时或者网关挂掉了。但是当整个页面都崩溃,只展示 502/504 时,便是访问前端资源时的网关存在问题。

当然,这里的前端是广义上的前端,不仅是纯静态页面,还包括 Nodejs 服务、Spring MVC, PHP 等这种 web 服务。

而我们的服务基于 nodejs 服务,当定位到问题时是,ssr 端发送一个请求到后端时,请求超时了。而我们的 nginx 超时响应低于后端的超时时长,于是就存在node服务还在等后端返回,而 nginx 已经将请求关闭了。当存在足够数量的挂起请求后,就报错了。

解决方案

在 ssr 端设置超时,在远低于 nginx 超时的报错到达前,提前结束请求。

或者是调整 nginx 的超时时长。

问题总结

该问题存在于当初是为了解决首屏问题,而采用 ssr,然而超时便会导致服务挂起,便需要有一定的错误处理机制来处理。

相关推荐
wordbaby2 分钟前
React Native 新架构落地鸿蒙:跨三端政务级应用的工程实践与深度复盘
前端·react native·harmonyos
晓说前端11 分钟前
第一篇:为什么学TypeScript?—— 优势、场景与环境搭建
javascript·ubuntu·typescript
excel1 小时前
为什么我推荐使用 Termius:现代 SSH 工具的完整体验
前端·后端
ZC跨境爬虫1 小时前
模块化烹饪小程序开发日记 Day7:(菜谱详情接口开发与JSON数据读取全流程)
前端·javascript·css·ui·微信小程序·json
এ慕ོ冬℘゜2 小时前
JS 前端基础面试题
开发语言·前端·javascript
LaughingZhu2 小时前
Product Hunt 每日热榜 | 2026-05-25
前端·人工智能·经验分享·chatgpt·html
IT_陈寒3 小时前
Java的Optional差点让我掉坑里,这几个坑你别踩
前端·人工智能·后端
粉嘟小飞妹儿3 小时前
JavaScript对象创建的几种灵活方法
前端
前端小万3 小时前
2026年了,为什么我突然开始做GZH?
前端
子兮曰3 小时前
Harness 驾驭工程深度教程:从 AGENTS.md 到全链路 AI 编码基础设施
前端·后端·ai编程