我试图限制可用于进程的ram数量,所以我要发出ulimit -v 512000
命令。
运行任何node
文件都会返回:
#
# Fatal process OOM in heap setup
#
Illegal instruction (core dumped)
我尝试在node
上运行--max_old_space_size=400
进程,但没有运气。
如果您想复制此内容,只需创建一个test.js
:
console.log("Hello from ulimit test!")
并打开一个新终端:
$ ulimit -v 512000
$ node test.js
#
# Fatal process OOM in heap setup
#
Illegal instruction (core dumped)
$ node --max_old_space_size=400 test.js
#
# Fatal process OOM in heap setup
#
Illegal instruction (core dumped)
我正在Ubuntu 18上运行Node v8.10.0。
答案 0 :(得分:0)
ulimit
限制了可用的虚拟内存量,显然节点至少需要1GB。
因此,如果您运行ulimit -v 1024000
,则可以运行node
,但是您只能访问80mb
的内存。
和--max_old_space_size=400
基本上没有用。