NodeJS下载文件Linux句柄不断增加
标题可能取的不准确,描述下问题: 最近做了一个系统内包含一个下载.zip文件的功能,单个文件很小,最多就几百kb 现在发现在/proc/pid/fd 下的句柄数量不断增多,但是我自己在测试服上测试了下,又没有重现,不管怎么下载,都没有下载相关的句柄停留,不知道什么问题
下载代码如下:
let mime = "text/plain";
let file_path = path.join('..gm/', process.cwd(), 'uploads', file_name);
fs.exists(file_path, function (exists) {
if (!exists) {
message.setCode(CODE.OBJECT_NOT_EXIST);
return message.send();
}
//获得文件信息
fs.stat(file_path, function (err, stats) {
if (err) {
message.setCode(CODE.FAIL);
return message.send();
}
let content = fs.createReadStream(file_path, {flags: 'r'});
res.writeHead(200, {
'Content-Type': mime,
"Content-Length": stats.size,
'Content-Disposition': 'attachment; filename=' + file_name
});
content.pipe(res);
content.on('end', function () {
res.end();
});
});
});
贴一部分句柄截图