如何使用 jprofiler9 分析 Java 服务器应用程序?

Posted

技术标签:

【中文标题】如何使用 jprofiler9 分析 Java 服务器应用程序?【英文标题】:How do I profile a java server application using jprofiler9? 【发布时间】:2017-01-02 07:19:41 【问题描述】:

我已经通过了“agentlib”标志。我是否还需要设置触发器来获取快照?我实际上想分析从应用程序开始到停止的整个运行(包括堆/gc 转储、方法的 CPU 分析等)。有人可以告诉我们如何为整个应用程序运行做到这一点吗?这方面的帮助不是很清楚。

【问题讨论】:

【参考方案1】:

这在 JProfiler 中称为“离线分析”,需要您设置触发器。

您为“JVM 启动”定义了一个触发器,您可以在其中启动您感兴趣的记录,并定义一个“JVM 退出”触发器,您可以在其中保存快照。

有关详细信息,请参阅

http://resources.ej-technologies.com/jprofiler/help/doc/helptopics/config/triggers.html

【讨论】:

非常感谢您的帮助/信息。我应该使用 GUI(jprofiler GUI)来设置这些触发器还是有办法在某个文件中设置这些触发器/快照,比如 config.xml 文件? 我需要这个的原因是因为我在远程机器上运行这个分析会话并且远程处理 GUI 非常缓慢。 此外,我还想知道如何在不从 GUI 启动的情况下创建新会话?当我在新会话按钮上计时时,它会询问我是要从 GUI 启动还是附加到正在运行的进程。我也不想要。我只想创建一个新会话,以便我可以设置我的所有分析信息(CPU 样本、GC、触发器、快照),以便我可以在我的 java 命令行中使用此会话 ID。谢谢你给我一个出路:) 您在 GUI 中创建会话,然后您可以使用 Session->Export Session Settings 将其导出到 xml 文件。使用集成向导(会话->集成向导->新建远程集成)获取包含对配置文件的引用的离线分析会话的完整 VM 参数。 非常感谢。我有另一个问题,我将其作为另一个问题提出。

以上是关于如何使用 jprofiler9 分析 Java 服务器应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Jprofiler 9.11 在一段时间后停止进行分析(CPU 视图 - 热点)?

jprofiler9.1.1 安装与配置

JProfiler性能分析

性能测试之JProfiler9.2

java基于springboot+vue的汉服交流网站

JAVA开发微信小程序客服,如何让客服使用手机接收用户消息啊?