网站搜索

javascript - 如何在使用 memory-usage 包运行的 Nodejs 中设置 max-old-space-size 内存限制


我正在使用 https://www.npmjs.com/package/memory-usage 来查看我的 Node 应用程序如何使用内存,通过在 macOS 终端中运行 'memory-usage app.js'。然而,经过一些测试,它总是在 1.4GB 时崩溃。

在普通的 Node.js 命令中,要提高内存限制,我可以使用 'node --max-old-space-size=8192 app.js'。但是运行 'memory-usage --max-old-space-size=8192 app.js' 就不起作用了。

我的 Mac 有以下内存详情:

BANK 0/DIMM0:

容量:4 GB 类型:DDR3 速度:1867 MHz

BANK 1/DIMM0:

容量:4 GB 类型:DDR3 速度:1867 MHz

我的 Nodejs 应用程序的最大尺寸是多少,以及如何通过内存使用来设置它?

谢谢你。

答案#1

尝试通过 NODE_OPTIONS 设置它:

Unix :

export NODE_OPTIONS="--max-old-space-size=8192" && memory-usage app.js

Windows :

set NODE_OPTIONS="--max-old-space-size=8192" && memory-usage app.js

答案#2

内存使用的可执行文件很可能只是忽略了你的 max-old-space 参数。你应该能够在它们的文档中找到解决办法。看起来 Node 在 64 位系统上的默认内存分配是 1G。

请参见相关(可能重复的)帖子。限制 node.js 的内存使用

1.4G 对我来说有点高。我想知道你是不是在某个地方有内存泄漏?

另请参见:如何监控 Node.js 的内存使用情况?