如何使用 java -prof 选项获取在 Tomcat 上运行的 java 程序的分析输出?

Posted

技术标签:

【中文标题】如何使用 java -prof 选项获取在 Tomcat 上运行的 java 程序的分析输出?【英文标题】:How to get profiling output of java programs running on Tomcat using java -prof option? 【发布时间】:2011-09-20 03:17:35 【问题描述】:

在 java 程序中,使用 java profiler 运行程序将生成分析输出 Ex- java -prof 类文件名

如何获得在 Tomcat 上运行的 java 程序的相同分析输出?

我想得到这样的分析输出

count callee caller time ,就像在分析输出中这样

1 java.util.LinkedHashMap.init()V java.util.HashMap.(IF)V 0

你能告诉我如何为在 Tomcat 上运行的程序获得这样的输出吗?

【问题讨论】:

jvisualvm 可以附加到正在运行的 tomcat 进程。 【参考方案1】:

Tomcat 也只是一个 Java 应用程序,因此您可以通过在 Tomcat 发行版的 startup.bat/startup.sh 中定义 JAVA_OPTS 环境变量来添加相同的 VM 参数。

但是,我真的建议使用真正的分析器,有几种免费和商业替代品。主要免费的是visualvm,作为商业解决方案,我推荐JProfiler(免责声明:我的公司开发了该工具)。

在这些分析器中,查找“热点”视图,它将向您显示您正在寻找的信息类型。

【讨论】:

以上是关于如何使用 java -prof 选项获取在 Tomcat 上运行的 java 程序的分析输出?的主要内容,如果未能解决你的问题,请参考以下文章

如何登录TOM邮箱网页版,TOM个人邮箱登录

你了解TOM企业邮箱SSL技术吗?

如何在列表视图中获取所选项目的值 - Android

如何在java中计算重复名称[关闭]

即使在 Java 中未选中 Systems Daylight 选项,也始终使用 Java 中的夏令时获取时区

如何使用JAVA获取我当前位置的经纬度