Javascript 为什么node.js进程占用的内存多于分配的内存

Javascript 为什么node.js进程占用的内存多于分配的内存,javascript,linux,node.js,memory,Javascript,Linux,Node.js,Memory,有人能解释一下为什么我的Node.js进程占用的内存超过了分配的内存吗 我为Nodejs进程分配了4G内存(根据Nodejs文档,64位机器上支持的最大内存),但我看到该进程占用了5.6g的RSS内存(远高于我分配的4G) 这就是我运行流程的方式 node-max old space size=4096 processName.js 这是我的TOP命令显示的内容(RSS@4.6g) max old space size控制解释器中用于存储Javascript对象(有时称为V8堆)的node.js

有人能解释一下为什么我的Node.js进程占用的内存超过了分配的内存吗

我为Nodejs进程分配了4G内存(根据Nodejs文档,64位机器上支持的最大内存),但我看到该进程占用了5.6g的RSS内存(远高于我分配的4G)

这就是我运行流程的方式

node-max old space size=4096 processName.js

这是我的TOP命令显示的内容(RSS@4.6g)

max old space size
控制解释器中用于存储Javascript对象(有时称为V8堆)的node.js内存使用量的一个方面,而不是整个进程的整个内存使用量。例如,
max old space size
与node.js的本机代码部分使用的内存量无关


因此,总内存使用量始终可以超过
max old space size

,我认为该设置只会影响v8堆,而不会影响整个node.js进程。