2010-03-05 10 views
3

많은 CPU를 사용하는 상당히 복잡한 Java 어플리케이션이 있으며 CPU 사용의 원인을 판별하는 데 사용할 수있는 프로파일 툴에 대한 권장 사항이 있는지 알고 싶습니다. 내 목표는 대부분의 CPU 시간을 사용하는 코드의 위치를 ​​정확히 찾아내는 것입니다.리눅스에서의 Java 프로파일 작성

+0

모든 Java 프로파일 러는 Linux에서 실행됩니다. – Dolph

+0

IDE를 사용하고 있습니까? 가장 좋은 IDE는 프로파일 러가 내장되어 있거나 모듈로 제공됩니다. –

+0

아니요, 저는 IDE를 실행하지 않습니다. 내 응용 프로그램이 실제로 다른 응용 프로그램에서 시작됩니다. – beyonddc

답변

-1

This method은 기술이 없지만 works best입니다. 이유는 short explanation입니다. 당신이 IDE에서 실행되지 않기 때문에

, 당신은 스택 샘플을 얻기 위해 pstack을 또는 lsstack를 사용할 수 있습니다. 앱이해야 할 것보다 더 많은 시간을 사용해야한다면 대부분의 문제는 대부분의 스택 샘플에서 명확하게 볼 수있는 하나 또는 몇 개의 불법 함수 호출입니다.

0

Netbeans에는 기본 제공 프로파일 러가 있습니다. NB는 우분투에서 잘 실행됩니다. 9.10

문제점을 개발 환경에서 관찰 할 수없는 경우 프로파일 러를 원격 JVM (프로덕션 환경)에 연결할 수 있습니다. 프로파일 러에서 JMS/JConsole 연결을 허용하도록 호스트 JVM을 구성해야합니다. JMS/JConsole 실시간 모니터링 시각화 차트는 꽤 멋지게 보입니다.

0

Eclipse IDE에서 Visual VM을 사용했습니다. IDE가 아닌 경우 jhat와 jconsole이 도움이 될 것입니다. 자세한 내용은 Google jhat

0

Sun Java 6를 사용하는 경우 문제가있는 프로그램을 실행하는 시스템의 JDK에서 jvisualvm을 사용하는 방법을 배우십시오.

대부분의 질문에 답하고 이미 실행중인 프로그램에 쉽게 첨부 할 수 있으며 무료입니다.

관련 문제