Node.JS实战60:解除“封印”!给Node更多的内存。

这一节,不讲编程,谈点很有用的知识!

默认情况下当用node启动我们的程序时,可用的最大内存量是512MB。

Node.JS实战60:解除“封印”!给Node更多的内存。

如果程序运行时使用的内存量超过这个值,就会报错。本文,告诉大家如何解除这个封印,给Node程序更多的可用内存。

Node.JS实战60:解除“封印”!给Node更多的内存。

如上图中,为了展示内存不足的错误,我们给node启动加了一个参数:--max_old_space_size=1,含意为:只给程序1MB的内存。被启动的是ShareWAF,一款大型的Web应用防火墙,1MB内存显然是不够的,所以出错了。

而正是这个参数:max_old_space_size,可以指定我们程序可用的内存量。

当不使用这个参数时,相当于使用默认值--max_old_space_size=512。

那么,看如下的命令:

//使用1gb内存

node --max-old-space-size=1024 ShareWAF.js

//使用2gb内存

node --max-old-space-size=2048 ShareWAF.js

//使用3gb内存 

node --max-old-space-size=3072 ShareWAF.js

//使用4gb内存

node --max-old-space-size=4096 ShareWAF.js

//使用5gb内存

node --max-old-space-size=5120 ShareWAF.js

//使用6gb内存

node --max-old-space-size=6144 ShareWAF.js

//使用7gb内存

node --max-old-space-size=7168 ShareWAF.js

//使用8gb内存

node --max-old-space-size=8192 ShareWAF.js