기타

node js gc

세모데 2019. 5. 19. 01:29

node(v8) gc를 분석하기 위해 아래 패키지를 설치

 

1. npm install node-inspector  (웹 수행)

2. 분석

   npm install v8-profiler

   ===========================================

   require("v8-profiler")

   var test = null

 

   function Leak() {

       var imsi = test;

 

        test = {

              arr : new Array(1000000).join("*")

              some : function () {

                  console.log(imsi);

              }

         }

    }

 

    setInterval(test, 1000);

 

   gc 웹페이지로 가서 위에 프로그램에서 생성되는 memory profile 정보를 

   로드하여 분석

 

3. 기타

heap dump 출력 해서 메모리 정보 display

 

# heapdump 설치

npm install heapdump

 

# 코드에 heapdump 사용

var heapdump = require("heapdump");

 

setInterval(function() {

     heapdump.writeSnapshot("" + Date.now() + ".heapsnapshot");

}, 1000);