【问题标题】:Remotely profiling a JVM远程分析 JVM
【发布时间】:2010-07-16 05:41:28
【问题描述】:

我需要远程分析 JVM 的 CPU 使用率、IO 统计信息和文件描述符/处理程序计数,并同时支持 *NIX 和 windows 平台。我尝试使用 SIGAR API,它使用底层本机代码实现很好地抽象了平台,但它不支持远程分析。是否有替代 API 可以做到这一点?或者,是否可以扩展 SIGAR 框架以进行远程 JVM 监控?任何关于在哪里查看的提示都会有所帮助。提前致谢!

【问题讨论】:

    标签: java profiling


    【解决方案1】:

    Afaik,JVM 通常可以配置为允许远程分析。

    Eclipse TPTP 具有分析甚至是漂亮的图表功能,他们在Data Collection Subsystem 中提到了网络

    JDK 附带的JVisualVM 也有一个远程部分。

    【讨论】:

    • TPTP 不再维护。 =(
    【解决方案2】:

    NetBeans profiler 提供各种分析,包括远程会话。从文档中查看此页面以开始远程调试:

    Attaching Profiler to Local or Remote JVM

    【讨论】:

    • 此实用程序不允许我分析我指定的参数。特别是,它无法让我测量 io stats 或 fd count。
    • 我对 NetBeans 分析器的反对意见是我正在分析一个远程进程(方法跟踪),它做得很好,但它不允许我将配置文件保存到文件中以便以后检查或被别人。真的很沮丧和明显的遗漏。可能有办法做到这一点,但我已经检查了一切。
    【解决方案3】:

    你可以试试JProfiler。虽然是付费的,但你可以先试用评估版

    【讨论】:

      【解决方案4】:

      Visual VM 一直是最好的配置文件之一,并且是开源的。我一直在使用它进行 JVM 分析,它带有不同的插件/扩展来查看不同的报告。

      我还尝试与 WebSphere/Tomcat/Liferay 和 Glassfish 服务器集成。事实上,任何启用了 JMX 远程管理功能的 JVM 都会被 Visual VM 识别。

      默认情况下,Visual VM 会识别 Sun JVM,但例如它无法识别 IBM JVM。对于任何其他非 Sun JVM,您需要启用 JMX 远程管理功能才能使用 Visual VM 连接到 JVM。

      【讨论】:

      • 请不要在您的帖子中包含“签名”。您的用户框会自动为您显示。
      猜你喜欢
      • 2017-12-11
      • 2011-08-19
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-26
      • 1970-01-01
      相关资源
      最近更新 更多