Node js flags

node -expose-gc
node -max-old-space-size
node -noincremental-marking
node -max-new-space-size
node -trace_parse
 
 
Node.js 최적화, 메모리관리를 위한 flag
Node.js를쓰다보면메모리를점점잡아먹는현상을발견할수있다. 이것은굉장히일반적인현상이고, Node.js에서쓰는 V8엔진은기본으로 1.4GB 메모리를한계로잡아놓고(기본적으로 64비트는 1.4GB, 32비트는 512MB를한계로잡는다.) 그안에서메모리를점점사용하게된다. 나의경우는아마존프리티어를사용하기때문에메모리가 1GB 밖에되지않아서메모리제한을좀더낮추어야했다. 메모리사용을 512MB로제한하라는옵션이다. 아래와같이사용할수있다. 혹은 forever 모듈을사용하고있다면아래와같이사용하면된다. 가비지컬랙터를수동으로전환한다. 내가짠자바스크립트코드에서 gc();를호출하면된다. 적어도 30초에한번씩은가비지컬랙팅을하기를추천한다고한다. 만약서버멈춤이짧은것이중요하다면플래그를사용하면된다. 이것은피크퍼포먼스를줄여버리기도하지만, 100ms정도로서버멈춤이확짧아질것이다. 반면피크퍼포먼스가중요하고서버멈춤이오래걸려도괜찮다면 --noincremental-marking 플래그를사용하면된다. 이플래그를사용하면 1GB당 1초정도의서버멈춤을예상할수있다. 따라서주로작은힙(heaps)이나일괄처리테스크(순차처리테스크)에유용하게사용된다. StackOverFlow : NodeJS / ExpressJS Memory Leak http://stackoverflow.com/questions/22507667/nodejs-expressjs-memory-leak StackOverFlow : Is anybody making a Node-optimized V8?
Node.js 최적화, 메모리관리를 위한 flag

Recommendations