18

I am trying to limit a node.js application from using to much memory and I've found out about the --max-stack-size & --max_executable_size options that are available within V8 to pass when invoking the file, but how should I combine these and possible other arguments to limit max memory usage to 1GB?

Industrial
  • 38,890
  • 68
  • 188
  • 289

2 Answers2

16

https://github.com/joyent/node/wiki/FAQ

What is the memory limit on a node process?

Currently, by default v8 has a memory limit of 512mb on 32-bit systems, and 1gb on 64-bit systems. The limit can be raised by setting --max_old_space_size to a maximum of ~1gb (32-bit) and ~1.7gb (64-bit), but it is recommended that you split your single process into several workers if you are hitting memory limits.

Value is in megabytes, I believe.

James
  • 23,686
  • 11
  • 78
  • 128
Josh
  • 12,382
  • 2
  • 39
  • 46
  • 5
    The default limit increased to ~1.5GB around node 2. See https://github.com/nodejs/node/issues/3370#issuecomment-148108323 – hurrymaplelad Nov 12 '15 at 07:04
13

It's now, --max-old-space-size no technology limits...

for example node --max-old-space-size=8192 ./app. We create limit in 8Gb

Eduardo Cuomo
  • 16,091
  • 5
  • 104
  • 88