我正在寻找一个 Java Profiler,用于满足以下所有要求的高需求生产环境,无论是商业的还是免费的:
- 与代码的轻量级集成(无需使用特殊选项重新编译,无需代码 Hook 等)。在应用程序代码旁边删除一些分析器特定的 .jar 是可以的。
- 应该能够在不重新启动应用程序的情况下连接/断开与 JVM 的连接。
- 当分析未激活时,对性能没有影响
- 当分析处于 Activity 状态时,对性能的影响可以忽略不计。非常轻微的退化是可以接受的。
- 必须完成分析器所做的所有“预期”工作 - 在每种方法中花费的时间来查找热点、对象分配/内存分析等。
本质上,我需要一些可以在生产中处于 hibernate 状态的东西,当一切都很好而没有人知道或关心它的存在时,但随后能够连接到它的麻烦(和性能下降),以查明难以发现的问题,例如热点和同步问题。
最佳答案
你试过YourKit ?它几乎具有您正在寻找的所有功能。
关于java - 用于生产的最佳和最安全的 Java Profiler?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3571166/