我正在寻找一个很好的工具来分析 java webapp。如果可能的话,我想获得性能信息和内存使用情况。
有什么建议么?
JProfiler是一个非常好的工具。它与所有主要的 IDE 和应用程序服务器集成。
Eclipse Memory Analyzer是分析 java 应用程序内存使用情况的最佳工具
我使用 Netbeans Profiler:
替代文字 http://www.netbeans.org/images/v6/1/features/profiler-java-cut.png
它是免费的,具有基于任务的分析,一个堆遍历器,允许插入分析点,跟踪内存使用和线程,但最重要的是它允许你分析远程 JVM。您甚至可以附加到已经运行的那些。
哦,如果你也为你的项目构建了一个 maven 版本,它会非常有效。
SmartInspect是一个分析器和记录器。不特定于内存,但您可能想看看。它也适用于多种语言,包括 Delphi、Java 和 .NET。包括其他更高级的功能。
我使用过YourKit Java Profiler 7.5并且对它相当满意。Java 在最近的版本中包含了一些非常好的工具,值得研究。(例如,jmap -histo <pid>
)
我喜欢使用基于 Eclipse 的SAP Memory Analyzer。它工作得很好,也适用于大型堆转储!
对于初步调查,您可以启动 jconsole 并将其附加到正在运行的进程。这将允许您查看一段时间内的内存使用情况,即使是在生产环境中,包括垃圾收集,而不会受到分析器设置的全部影响。