1 回答
![?](http://img1.sycdn.imooc.com/533e4c1500010baf02200220-100-100.jpg)
TA贡献2065条经验 获得超14个赞
最后,我使用了visualVM Profiler...这些是使用VisualVM执行Wildfly 10 CPU配置文件所需的步骤(都在本地执行!!):
下载最新的VisualVM(在我的例子中是 1.4.1 版)。
下载 JDK10...您将需要 JDK10 才能仅运行 VisualVM。由于这个错误,这一步是必需的(这是我之前在分析应用程序时遇到的错误)
更改 visualVM 配置文件 (
<visual-vm>/etc/visualvm.conf
) 以指向您的 JDK10 安装...转到
<visual-vm>/profiler/lib
并复制库:jfluid-server.jar
到:<wildfly>/standalone/lib/ext
...需要此库来克服以下错误:(此处和此处java.lang.NoClassDefFoundError: org/netbeans/lib/profiler/server/ProfilerRuntimeCPUFullInstr
有关此错误的更多信息)接下来,修改 wildfly 启动脚本以将包包含
org.netbeans.lib.profiler.server
在 SystemProperty: 中jboss.modules.system.pkgs
。例子:-Djboss.modules.system.pkgs=org.jboss.byteman,org.netbeans.lib.profiler.server
。(根据此链接,此属性强制野蝇从任何类加载器中定位此类包)启动视觉VM。
启动 Wildfly 服务器(包括您的应用程序 EAR/WAR/JAR 应用程序)...注意:我使用 JBoss 工具从 Eclipse 运行 Wildfly 服务器;在这种配置下,我的应用程序 (WAR) 处于爆炸模式!
进入visualVM,打开
org.jboss.modules.Main
进程。然后转到分析器选项卡。修改目标Profile classes
和Outgoing calls
并把类要监视/型材(注:现在,对我来说,冠军的配置是:Profile classes
:my.package.**
和Include outgoing calls
:my.package.**
)点击 CPU 按钮,等待 VisualVM 检测您的目标类,然后调用运行缓慢的代码;稍后,分析结果...
添加回答
举报