semtax의 개발 일지

크롬 개발자도구에서 node.js 서비스 메모리, CPU 프로파일링 하기 본문

개발/node.js

크롬 개발자도구에서 node.js 서비스 메모리, CPU 프로파일링 하기

semtax 2020. 1. 10. 18:47
반응형

개요

최근 프로젝트를 수행하다, 서비스에서 메모리를 생각보다 너무 많이 사용하는것 같아서 해당원인을 분석해보고 싶었다. 하지만, pm2 monit이나 이런거로는 구체적으로 어떤부분에서 많이 쓰였는지를 알 수가 없어서 방법을 찾던중 크롬 개발자도구에서 node.js 의 메모리나 CPU 사용량을 프로파일링 할 수 있다는것을 찾아서 유용하게 사용하였다.

사용법

크롬 개발자도구에서 프로파일링 하는법은 아래와 같다.

1. node.js로 서비스를 실행할때 "--inspect" 옵션을 주고 서비스를 실행

node --inspect app.js

2. package.json start 항목에 "node_arg": ["--inspect"] 추가.

  {
    "name": "imqa_web_api",
    "version": "2.21.5",
    "private": true,
    "scripts": {
      "start": "node --inspect ./bin/www",
      "test": ...
    },
    "dependencies": {
      ....
    }
  }

실행하면 브라우저에서 아래와 같은 창이 뜨고, inspect 버튼을 누르면 개발자 도구에서 서비스를 모니터링 할 수 있다.

반응형
Comments