node.js 0.12.x内存使用情况

时间:2015-04-28 08:59:06

标签: node.js performance memory

尝试将我的应用程序从节点0.10.x升级到节点0.12.x系列时,我遇到了一个令人不快的惊喜:0.12比0.10使用了大约15%-20%的RAM。

根据io.js问题页面上的few threads判断,似乎问题在于底层的v8引擎。

现在软件更新很难向管理层出售。除此之外,需要支付更多VPS硬件而且几乎没有明显的好处,这对我们来说是一个交易破坏者。

有没有办法禁用任何新的铃声和放大器口哨V8补充说,正在占用额外的RAM?也许是吹捧的CPU配置文件?

我基本上在寻找一种v8交换机,它可以将内存使用量降低到与节点0.10附带的v8相当的水平。

2 个答案:

答案 0 :(得分:8)

您可以使用--max-old-space-size标志限制Node.js进程使用的内存量。也许你可以将内存限制在可接受的范围内,然后对你的应用进行基准测试,看看它是否可以接受。

node --max-old-space-size=512 myScript.js

我相信还有一些控制垃圾收集的标志可能值得探索。 this GitHub issue about v8 performance profiling etc.也值得您花时间阅读。

答案 1 :(得分:0)

如果您还可以选择恢复v.10,则可以使用Node Version Manager NVM轻松完成此操作。只需切换到您喜欢的任何版本并使用它,同时等待修复v.12。