是否有适用于 Java 的控制台探查器?
有没有一个类似gprof的Java探查器可以从Linux中的终端运行?我找到的所有工具都是GUI程序,我需要从终端运行它。
有没有一个类似gprof的Java探查器可以从Linux中的终端运行?我找到的所有工具都是GUI程序,我需要从终端运行它。
JVM 有一个名为 HPROF 的内置探查器。您可以在命令行上启用它,如下所示:
java -agentlib:hprof=file=hprof.txt,cpu=samples MyClass
这将在程序完成后将配置文件信息转储到文本文件中。除了分析 CPU 使用情况之外,它还可以跟踪堆使用情况。
开源工具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()