我推荐 JVisualVM。它作为JDK的一部分发货。您可以在bin文件夹中找到它,或者您可以在这里下载它。您可以使用它来监视应用程序花费时间的方法,但您还可以查看线程和内存使用情况。它还可以创建堆转储,然后您可以使用VisualVM本身或优秀的(也是免费的)Memory Analyzer (MAT)进行分析。
我推荐使用Eclipse TPTP(测试和性能工具平台)。它提供了功能丰富的剖析器,并且是免费的。它是Helios版本的一部分,您可以使用Helios更新站点下载它。Tracing and Profiling Tools项目是Eclipse TPTP顶级项目中的一个项目,它解决了应用程序生命周期中的跟踪和剖析阶段。跟踪和剖析工具项目通过扩展TPTP平台为构建跟踪和剖析工具提供框架。该框架包含视图、对话框和操作项,支持收集和分析应用程序性能信息的能力。该项目包括示例剖析工具,用于监视代理收集跟踪和剖析数据的单系统和分布式Java应用程序。还提供了用于可定制探针插入的通用工具包。
您可以使用自JDK 6更新7版开始捆绑的jvisualvm。如果您不想在计算机上安装另一个JDK,则可以下载visualvm。但是,如果您有预算,我建议获取YourKit,因为它提供了比visualvm更复杂的功能和更好的指标。