首页
学习
活动
专区
圈层
工具
发布

#node.js

能在服务器端运行 JavaScript 的开放源代码、跨平台 JavaScript 运行环境

Node.js 中 stream.pipeline 与 async/await 混用时的一个隐蔽错误:ERR_STREAM_PREMATURE_CLOSE 的成因与处理

用户1839651

处理大文件上传、日志转储或者数据库导出时,很多人会用 Node.js 的 stream 把数据从一端搬到另一端。stream.pipeline 因为自带错误传播...

000

Node.js 中 Stream 背压处理不当导致的内存暴涨与排查实录

用户11716263

线上一个日志聚合服务在运行几天后 RSS 内存会涨到 2GB 以上,最终被 PM2 重启。服务本身不复杂:从 Kafka 消费日志消息,做一点字段清洗,然后写到...

100

Node.js 中遇到 EPIPE 错误时进程为何退出以及如何正确处理管道断裂

用户1839651

在 Node.js 里写 CLI 工具或处理管道输出时,偶尔会看到 Error: write EPIPE 导致进程直接崩溃。EPIPE 表示管道的另一端已经关闭...

200

Node.js 中 process.nextTick 与 setImmediate 的选用场景与底层差异

用户11716263

在 Node.js 里写异步逻辑时,process.nextTick 和 setImmediate 看起来都能把任务推迟执行,但它们在事件循环中的位置完全不同,...

100

Node.js 中 Promise.all 并发请求导致数据库连接池耗尽的排查与修复

用户1839651

线上一个用 Node.js 写的聚合接口最近频繁超时,报错信息里出现 TimeoutError: ResourceRequest timed out,重启后能撑...

300

Node.js 中处理大文件上传时,为什么你的内存总是悄悄涨上去?

用户12771345

线上有个后台服务,偶尔会收到运营同学上传的几百兆甚至上G的CSV数据包,用来做批量导入。接口刚上线时一切正常,跑了一段时间发现容器内存使用率时不时飙到90%以上...

100

在 Node.js 中可靠地解析 multipart/form-data:避开原生模块与内存陷阱

用户11716263

处理文件上传时,multipart/form-data 是最常见的编码格式。在 Express 或 Koa 项目里,很多人直接引入 multer 或 formi...

200

Node.js 中误用 async 回调导致的进程退出:从一次线上排查说起

用户1839651

线上一个用 Node.js 写的定时同步脚本跑着跑着进程就没了,日志里没有任何 uncaughtException 的记录,退出码是 0。这个脚本做的事情是从上...

000

Node.js 中 async/await 捕获不到异步回调里的异常?从 Domain 到 AsyncLocalStorage 的错误追踪

用户11716263

在 Node.js 项目里用 async/await 写业务逻辑时,经常会遇到一个棘手的问题:某个第三方库或原生模块通过事件回调异步抛出的错误,并没有被外层的 ...

000

Node.js 中使用 Worker Threads 处理 CPU 密集型任务:从 Event Loop 阻塞到线程池隔离

用户11716263

在 Node.js 服务里跑图像处理、加解密、大 JSON 解析或者复杂规则计算时,event loop 被长时间占用导致健康检查超时、其他请求排队,是线上很常...

000

Node.js 中 fs.createReadStream 的 end 事件为何不触发?一个流式读取大文件的真实坑

用户11716263

上周排查一个日志归档脚本时遇到一个很典型的问题:用 fs.createReadStream 读取几百 MB 的日志文件,逐行解析后压缩上传,结果 end 事件根...

000

记一次 Node.js 中 fs.writeFile 并发写入导致的文件内容错乱排查

用户11716263

上周在维护一个日志聚合服务时遇到了一个有点隐蔽的问题:服务需要把多个上游节点通过 HTTP 推送过来的日志片段按来源分别追加到本地文件里,方便后续用脚本做离线分...

000

Node.js 中解决 Multer 内存存储导致大文件上传爆内存的实战处理

用户11716263

在 Express 项目中用 multer 处理文件上传很常见,但不少人在没有指定 storage 时默认使用 memoryStorage,于是文件先被完整读进...

000

Node.js 中 stream.pipeline 的错误处理:为什么你的管道泄漏了文件描述符

用户11716263

用 Node.js 处理文件上传、日志转储或者数据导出时,stream.pipeline 几乎是标配。它把 readable、transform、writabl...

000

Node.js 中 fs.writeFile 的原子性问题与安全写入实践

用户1839651

在 Node.js 里用 fs.writeFile 直接覆盖写文件,看起来简单,但很多线上事故就出在这里。比如进程在写入一半时被 kill、磁盘写满、或者多个请...

000

排查 Node.js 进程内存持续上涨:从 Buffer 池到全局缓存

用户1839651

线上一个基于 Node.js 的日志采集服务运行几天后内存占用从 200MB 涨到 1.2GB,重启后恢复,但过几天又缓慢上升。服务逻辑不复杂:接收 HTTP ...

300

Node.js 中处理大文件上传的流式方案与内存泄漏排查

用户12771345

最近在维护一个内部素材管理系统时,遇到一个典型问题:用户上传超过 1GB 的视频文件时,服务端内存会迅速飙升,偶尔直接触发 OOM 重启。排查后发现,问题出在早...

100

Node.js 中处理大文件上传:流式解析 multipart/form-data 的实践

用户12771345

在 Node.js 服务端处理文件上传时,multipart/form-data 是最常见的请求格式。很多项目直接用 multer 或 busboy 就能跑通,...

300

Node.js 中处理 multipart/form-data 上传时,为什么你的文件总是不完整?

超哥前端记录

在 Node.js 里处理文件上传,很多人第一次用原生 http 模块或者 Express 的 multer 时都会遇到一个诡异现象:接口返回成功,文件也生成了...

100

Node.js 中 Promise 与 AsyncLocalStorage 的上下文丢失问题:从一次请求日志错乱排查说起

超哥前端记录

在 Node.js 服务里用 AsyncLocalStorage 给每个请求挂 traceId,日志里带上它,排查线上问题时能一把梭。但某次接入一个用 Prom...

100
领券