Node.js 中处理大文件上传:流式写入与临时文件清理的实践
最近在做一个内部用的素材管理系统,运营同学经常要上传几百兆甚至上 G 的视频和设计源文件。最初接口用的是 express 的 multer 中间件,默认把整个文件读进内存再写盘,结果一到并发上传就频繁触发进程内存告警,严重时直接 OOM 崩溃。排查下来问题很明确:磁盘写入本身不是瓶颈,真正吃内存的是文件在内存里被完整缓冲了一遍。这类场景在后台管理系统、网盘、素材库中很常见,核心诉求是上传过程稳定、内存占用可控,同时还要处理上传中断后的临时文件残留。这篇文章会从请求流接管、流式写入磁盘、写入过程中的错误处理以...