>

nodejs에서 메모리 누수를 감지하기위한 도구가 있습니까? nodejs 애플리케이션 테스트 경험에 대해 알려주세요.


  • 답변 # 1

    다음 도구는 메모리 누수를 발견하는 데 유용해야합니다.

    노드 인스펙터

    여기서 메모리 누수를 찾는 데 도움이되는 자습서도 있습니다 :

    https://github.com/felixge/node-memory-leak-tutorial

  • 답변 # 2

    메모리 누수를 추적 할 때 위의 노드 검사기를 시도했습니다.
    2012 년 4 월 현재 최신 노드 릴리스 v0.6.12에서 작동하도록 업데이트되지 않았습니다. 따라서 나는 다음을 발견했다 : https://github.com/c4milo/node-webkit-agent.
    노드 검사기에서 지원하지 않는 최신 V8 엔진의 힙 스냅 샷을 표시 할 수있었습니다. 짧은 시간에 누수 모듈을 감지 할 수 있었으며 (아마도 간헐적으로) 비슷한 성공을 거두기를 바랍니다.

  • 답변 # 3

    다음 소스를 추천 할 수도 있습니다 :

    <올>

    프로파일 링 및 메모리 누수 감지 도구에 대해 논의되는 NodeUp의 다음 에피소드 :

    http://nodeup.com/twentyone

    http://nodeup.com/fortyfive

    이 기사-Node.js의 메모리 누수 추적 – Node.JS Holiday Season. 기본적으로 메모리 누수를 추적하기 위해 널리 알려진 모든 모듈과 기술을 모은

    Mac OS-인스트루먼트 도구는 네이티브 (C ++) 모듈을 디버깅하는 데 도움이 될 수 있습니다. SmartOS 도구만큼 정교하지는 않지만 설치가 매우 쉽습니다.

  • 답변 # 4

    노드 인스펙터 나 node-webkit-agent가 아닌 Chrome 개발 도구와 heapsnapshot 파일을 직접 사용합니다

    require()  힙 덤프모듈.

    usr2 신호를 실행중인 nodejs 프로세스로 보내 힙 스냅 샷 파일을 가져옵니다.

    Chrome 개발 도구의 프로필 탭에서 heapsnapshot 파일을로드하십시오.

  • 답변 # 5

    npm 패키지 Memwatch를 사용했습니다 :

    Github 저장소와 NPM 소스

    기본적으로이 패키지는 V8 엔진이 가비지 수집을 수행 한 직후 메모리 힙 사용량을 확인하고 실제 메모리 사용량의 기준을 제공합니다.

    사용 방법은 다음과 같습니다.

    var memwatch = require('memwatch');
    memwatch.on('leak', function(info) {
        console.log('Memwatch leak: ');
        console.log(info);
    });
    memwatch.on('stats', function(stats) {
        console.log.message('Memwatch stats: ');
        console.log(stats);
    });
    
    

    원본 문서에서 :

    와이즈 비즈 와이즈 비즈  때때로 발생하는 이벤트는 설명하는 데이터를 제공합니다.   시간이 지남에 따른 힙 사용량 및 트렌드.

         

    와이즈 비즈  이벤트가 발생하면 코드가 누출되는 것처럼 보입니다.   기억. 일반적으로 힙 크기가 계속 커질 때 실행됩니다.   짧은 시간.

    Memwatch는 또한 "HeapDiff"클래스를 제공하여 함수에서 취할 수있는 두 스냅 샷 간의 힙 상태를 계산합니다.

    문제를 일으키는 이벤트를 추적하기 위해 스테이지 환경에서 memwatch를 실행하는 것이 좋습니다.

    The

관련 자료

  • 이전 android - 응용 프로그램로드시 소프트 키보드 숨기기
  • 다음 python - 선택적 매개 변수로 데코레이터를 작성하는 방법은 무엇입니까?