How to limit CPU and memory usage for node processes

I would like to install a Ghost Blog on a shared server via GitHub. During the installation, I need to run npm install, grunt init and grunt prod. My host provides 500 MB memory usage, if a process uses more than 600 MB he kills it.

Therefore I need an option to limit the memory usage of these processes because they all need more than 500 MB of memory!

I tried to run the processes with --max-old-space-size=450 but it does not seem to work.

I would be glad if anyone could provide me a link to a tutorial or documentation about running node processes with options.

Thank you!

UPDATE: Since I’ve posted this the installation of Ghost has changed completely.

Answers

I use the following and it works like a charm

NODE_OPTIONS=--max_old_space_size=50 npm install
Posted on by Anonymous

From node v8+, typing the following:

node --help

show a --v8-options option. Then typing:

node --v8-options

gives:

...
--max_old_space_size (max size of the old space (in Mbytes))
    type: int  default: 0
--initial_old_space_size (initial old space size (in Mbytes))
    type: int  default: 0
...

I have managed to use the first option like this:

node --max-old-space-size=250 `which npm` install

Here we told node to limit RAM usage to 250Mo, the 'which npm' part gives the current npm path and 'install' is the script you want to run.

Posted on by Anonymous

This is how you do it.

You send a command to limit the ram usage.

npm install --max-old-space-size=400
Posted on by Steven McConnon

Relevant tags