这里有没有人喜欢他们喜欢的Java Web应用程序使用的最喜欢的内存分析/内存泄漏工具?

Does anyone here have a favorite memory profiling/memory leak tool they like to use for their java webapps?

我正在寻找一个分析Java Web应用程序的好工具。 如果可能的话,我想获得性能信息和内存使用情况。

有什么建议么?


JProfiler是非常好的一个。它与所有主要的IDE和应用程序服务器集成。


Eclipse Memory Analyzer是分析Java应用程序的内存使用情况的最佳工具


我使用Netbeans Profiler:

替代文字http://www.netbeans.org/images/v6/1/features/profiler-java-cut.webp

它是免费的,具有基于任务的分析,堆遍历器,允许插入分析点,跟踪内存使用情况和线程,但最重要的是,它允许您分析远程JVM。您甚至可以附加到已经运行的服务器。

哦,如果您也为项目构建了Maven,它的效果会很好。


为了进行初步调查,您可以启动jconsole并将其附加到正在运行的进程中。这样一来,即使在生产过程中,您也可以查看一段时间内的内存使用情况,包括垃圾回收,而不会受到分析器设置的完全影响。


我喜欢使用基于Eclipse的SAP Memory Analyzer。它非常适用于大型堆转储!


我使用了YourKit Java Profiler 7.5,对此感到满意。 Java具有一些不错的工具,这些工具包含在最新发行版中,值得研究。 (例如,jmap -histo )


SmartInspect是一个探查器和记录器。不特定于内存,但是您可能需要看看。它也可以使用多种语言,包括Delphi,Java和.NET。包括其他更高级的功能。

SmartInspect architecture


推荐阅读