수색…


소개

이 게시물의 목적은 nodejs 프로파일 링 프로파일 링을 시작하고이 결과를 이해하여 버그 또는 메모리 누수를 캡처하는 것입니다. 애플리케이션을 실행하는 nodejs는 많은 측면에서 브라우저에서 실행되는 웹 사이트와 유사한 v8 엔진 프로세스 일 뿐이며 기본적으로 노드 애플리케이션의 웹 사이트 프로세스와 관련된 모든 메트릭을 수집 할 수 있습니다.

필자가 선호하는 도구는 chrome devtools 또는 chrome inspector이며 노드 관리자와 결합되어 있습니다.

비고

node-inspector가 node bebug 프로세스에 연결하지 못하는 경우가 있습니다. devtools에서 디버그 중단 점을 가져올 수없는 경우가 있습니다. devtools 탭을 여러 번 새로 고치고 잠시 기다렸다가 디버그 모드에 있는지 확인하십시오.

그렇지 않으면 명령 행에서 노드 관리자를 다시 시작하십시오.

간단한 노드 응용 프로그램 프로파일 링

1 단계 : 머신에서 npm을 사용하여 노드 검사기 패키지 설치

$ npm install -g node-inspector

2 단계 : 노드 검사기 서버 시작

$ node-inspector

3 단계 : 노드 응용 프로그램 디버깅 시작

$ node --debug-brk your/short/node/script.js

4 단계 : Chrome 브라우저에서 http://127.0.0.1:8080/?port=5858 을 엽니 다. 그리고 왼쪽 패널에있는 nodejs 애플리케이션 소스 코드와 함께 chrom-dev 도구 인터페이스를 볼 수 있습니다. 또한 응용 프로그램을 디버깅하는 동안 디버그 중단 옵션을 사용 했으므로 코드 실행은 첫 번째 코드 줄에서 중단됩니다.

여기에 이미지 설명을 입력하십시오.

5 단계 : 이것은 프로파일 링 탭으로 전환하고 응용 프로그램의 프로파일 링을 시작하는 쉬운 부분입니다. 특정 메소드 또는 플로우에 대한 프로파일을 얻으려면 코드가 실행되기 바로 전에 코드 실행이 중단된다는 것을 확인하십시오.

여기에 이미지 설명을 입력하십시오.

6 단계 : CPU 프로파일 또는 힙 덤프 / 스냅 샷 또는 힙 할당을 기록한 후에는 동일한 창에서 결과를 보거나 나중에 분석하거나 다른 프로파일과 비교할 수 있도록 로컬 드라이브에 저장할 수 있습니다.

이 기사를 사용하여 프로필을 읽는 방법을 알 수 있습니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow