首页 > 解决方案 > NODEJS - 如何通过在内存中保存缓冲区来提高性能

问题描述

我正在尝试从 node.js 中的 URL 下载一些视频。我需要将每个缓冲区发送到 Web 服务。

不管怎样,我的记忆似乎被它消耗殆尽了。每个视频大约 100M,进程使用的内存从 90M 到 500M,然后又回到 200M(似乎缓冲区没有被 GC 清除)。

我的代码如下:

request({ url: mediaURL, encoding: null }, (err, resp, bufferData) => {
    Logger.log(`Resolved buffer length: ${bufferData.length}`);
    buffer = bufferData;
    resolve();
});

我的变量缓冲区在函数内部(在顶部)声明。此外,当我不再需要缓冲区时,我会执行以下操作:

buffer = null;

但正如我所说,内存回到 200MB(而不是像最初的 90M)

我究竟做错了什么?有什么办法可以提高这里的性能吗?

谢谢!

标签: javascriptnode.jsperformance

解决方案


推荐阅读