programing tip

오픈 소스 Java 프로파일 러

itbloger 2020. 9. 4. 07:00
반응형

오픈 소스 Java 프로파일 러


Java와 함께 사용하도록 권장 할 수있는 것은 무엇입니까?

유일한 요구 사항은 오픈 소스 여야하거나 너무 비싼 학술 라이선스가 없어야한다는 것입니다.


jdk6과 함께 제공되는 VisualVM에는 내부에 기본 프로파일 러가 있습니다. VisualVM은 jdk와 함께 제공되므로 jdk6이 설치되어 있으면 설치했을 가능성이 높습니다.

https://visualvm.github.io/


여기 에 목록이 있습니다 (아래에 나열하면 링크가 깨지는 경우).

  • JMemProf
  • JMP
  • DrMem
  • JTreeProfiler
  • NetBeans 프로파일 러
  • JAMon API
  • JBoss 프로파일 러
  • MessAdmin
  • 적외선
  • TomcatProbe
  • JIP (Java Interactive Profiler)
  • Profiler4j
  • 스톱워치
  • JMeasurement
  • DJProf
  • TIJmp
  • Allmon
  • Appspy
  • 유레카 J
  • Japex
  • OKTECH 프로파일 러
  • Perf4j

아. Netbeans Profiler , developer.com의 "올해의 제품"수상자, 2009 년


Java에는 HProf 라는 기본 내장 프로파일 러가 있습니다 . 더 많은 기능을 갖춘 프로파일 러의 결과와 제공하는 결과를 비교하는 것이 유용하다는 것을 알았습니다.


오픈 소스 도구 jvmtop 에는 기본 콘솔 프로파일 러가 포함되어 있습니다. 출력 예 :

 JvmTop 0.7.0 alpha - 15:16:34,  amd64,  8 cpus, Linux 2.6.32-27, load avg 0.41
 http://code.google.com/p/jvmtop

 Profiling PID 24015: org.apache.catalina.startup.Bootstrap

  36.16% (    57.57s) hudson.model.AbstractBuild.calcChangeSet()
  30.36% (    48.33s) hudson.scm.SubversionChangeLogParser.parse()
   7.14% (    11.37s) org.kohsuke.stapler.jelly.JellyClassTearOff.parseScript()
   6.25% (     9.95s) net.sf.json.JSONObject.write()
   3.13% (     4.98s) ....kohsuke.stapler.jelly.CustomTagLibrary.loadJellyScri()

이클립스 TPTP

다음은 TPTP를 사용 하는 Java 애플리케이션 프로파일 링 에 대한 기사 이고 Eclipse TPTP를 사용하는 J2SE 5.0 기반 애플리케이션 프로파일 링 튜토리얼 입니다.


단순하고 사용하기 쉬운 오픈 소스 프로파일 러를 찾고 있다면 Jip ( Java Interactive Profiler )를 살펴볼 수 있습니다 . BSD 라이선스로 게시되었습니다. 작은 프로그램에 매우 유용하다는 것을 알았습니다. 적어도 그것이 제공하는 결과는 hprofs 출력보다 이해하기가 훨씬 쉽습니다.


Java Mission Control, it's free to use for development and it integrates with Eclipse. It has very low overhead (<1%) since it piggybacks on the data the JVM is gathering anyway.

It's very easy to use and it can also give a lot information you typically won't find in other profiling tools, e.g. latency profiling, online memory inspection, detailed gc statistics


This is quick, dirty, and very effective: just take a few thread dumps, or pause the program several times, and look at the stack traces.


Netbeans IDE includes a free profiler.

Also, if I remember correctly, the academic license for JProfiler is (relatively) inexpensive.


JVM Monitor is a Java profiler integrated with Eclipse to monitor CPU, threads and memory usage of Java applications.

If further deep analysis is needed, you may use other tools (e.g. TPTP, Memory Analyzer) as a next step.


Consider cutting-edge https://github.com/jvm-profiling-tools/async-profiler

This project is a low overhead sampling profiler for Java that does not suffer from Safepoint bias problem. It features HotSpot-specific APIs to collect stack traces and to track memory allocations. The profiler works with OpenJDK, Oracle JDK and other Java runtimes based on HotSpot JVM.

It's also built-in into IntelliJ IDEA Ultimate: https://www.jetbrains.com/help/idea/cpu-profiler.html.


There is also similar https://github.com/jvm-profiling-tools/honest-profiler.

The comparison between async-profiler and honest-profiler: https://github.com/jvm-profiling-tools/async-profiler/issues/77

참고URL : https://stackoverflow.com/questions/948549/open-source-java-profilers

반응형