엔지니어링/성능과 튜닝
[성능과 튜닝] 프로그램 성능 분석
Reference M1
2019. 2. 22. 20:22
시스템의 성능이 느릴 때 가장 먼저 해야 하는 작업은 병목 지점을 파악하는 것이다.
프로파일링 툴 VS APM 툴
구분 |
특징 |
프로파일링 툴 |
|
APM 툴 |
|
APM 툴을 프로파일링 툴과 비교하면 프로파일링 툴은 개발자용 툴이고, APM 툴은 운영 환경용 툴이라고 할 수 있다.
기본적으로 제공하는 기능은 응답 시간 프로파일링과 메모리 프로파일링 기능을 기본적으로 제공한다.
- 응답 시간 프로파일링
하나의 클래스 내에서 사용되는 메서드 단위의 응답 시간을 측정한다. 툴에 따라서 소스 라인 단위 응답 속도를 측정할 수도 있다. 응답 시간 프로파일링을 할 때는 보통 CPU 시간과 대기 시간을 제공한다.
- 메모리 프로파일링
GC의 대상이 되는 부분을 찾거나. 메모리 부족 현상(Memory Leak)이 발생하는 부분을 찾기 위함이다. 클래스 및 메서드 단위의 메모리 사용량이 분석된다. 마찬가지로 툴에 따라서 소스 라인 단위의 메모리 사용량도 측정할 수 있다.