生产用途的最佳和最安全的 Java Profiler?[已关闭]

我正在寻找一个Java Profiler,用于非常高要求的生产环境,无论是商业的还是免费的,满足以下所有要求:

  • 与代码的轻量级集成(无需使用特殊选项重新编译,无需代码挂钩等)。在应用程序代码旁边删除一些特定于探查器的 .jar 是可以的。
  • 应该能够在不重新启动应用程序的情况下连接/断开 JVM。
  • 当分析未处于活动状态时,对性能没有影响
  • 当分析处于活动状态时,对性能的影响可以忽略不计。非常轻微的降解是可以接受的。
  • 必须执行探查器执行的所有“预期”操作 - 在每个方法中花费的时间以查找热点,对象分配/内存分析等。

从本质上讲,我需要一些可以在生产中处于休眠状态的东西,当一切都很好,没有人知道或关心它在那里,但是然后能够麻烦地连接到它(和性能下降),自由地查明难以发现的问题,如热点和同步问题。


答案 1

你试过你的Kit吗?它几乎具有您正在寻找的所有功能。


答案 2

Java VisualVM 是一种工具,它提供了一个可视化界面,用于在 Java 虚拟机 (JVM) 上运行时查看有关基于 Java 技术的应用程序(Java 应用程序)的详细信息。Java VisualVM 组织由 Java 开发工具包 (JDK) 工具检索的 JVM 数据,并以使您能够快速查看多个 Java 应用程序上数据的方式呈现信息。您可以查看本地应用程序和远程主机上运行的应用程序上的数据。您还可以捕获有关 JVM 软件的数据并将数据保存到本地系统,并在以后查看数据或与他人共享数据。这自带甲骨文JDK它自己...

$ jvisualvm 

推荐