2016-09-28 8 views
0

우리는 서버에서 실행중인 자바 웹 앱을 가지고 있습니다. 그것은 바람둥이와 함께 개최됩니다. 나는 Flight Recorder를 사용할 수 있었고 JMC와 ​​연결하여 비행 기록을 기록 할 수 있었다. ...범인을 알아내는 Java 앱 프로파일 링

이제 내 응용 프로그램을 느리게 만드는 클래스를 어떻게 찾을 수 있는지 잘 모르겠다. 서버 (방문자 60 명)의 CPU 사용량은 약 10 %입니다. 그러나 때로는 매우 배가 고파지고 CPU 사용률이 거의 100 %에 이릅니다 (QUADCORE RAM : 16GB). 그러나 방문객은 정상이며, 약 60 ... 아직도 그렇게 행동합니다. 나는 바람둥이를 다시 시작해야한다.

이제 리소스가 부족한 상황을 처리하는 범인 클래스를 찾고 싶습니다.

답변

1

JMC에서 JMX 콘솔을 열고 CPU로드가 90 %를 초과하면 기록을 덤프 할 수있는 트리거를 만들 수 있습니다. "상태에서 복구 할 때"를 확인하십시오.

녹음이 끝나면 개요 탭의 범위 탐색기에서 CPU 스파이크가 발생한 간격을 녹음의 끝 부분에서 선택할 수 있습니다. 오른쪽 상단 모서리의 동기화를 선택하고 왼쪽 창에서 "코드"를 클릭하면 CPU 스파이크 중에 가장 뜨거운 메소드가 실행 된 클래스/패키지의 개요가 표시됩니다.