Jvisualvm简单使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jvisualvm简单使用相关的知识,希望对你有一定的参考价值。

参考技术A 打开jdk下面的jvisualvm软件,监控某个方法调用的耗时,main方法是我的启动方法,先调用testStringKey方法,然后在调用testObjectKey方法。

1、热点方法:表示虚拟机运行过程中被采样的每个方法,如果关注的方法没有出现在这个列表中,则表示此方法不是性能的热点,或者此方法被调用的次数太少。

2、自用时间:表示方法本身执行消耗的时间,分别以百分比和消费时间进行统计。方法执行时间包含方法调用其他方法的时间和自身执行时间。

3、自用时间(CPU):表示方法本身消耗的CPU时间,不包含休眠,I/O等待时间。如果看到热点方法的自用时间多,但是自用时间(CPU)小,则有可能是该方法包含I/O、线程调度。

4、总时间:包含该方法所消耗的总时间,包含调用其他方法所消耗的时间。

5、总时间(CPU):同总时间,但只包含CPU时间,不包含休眠、I/O等待时间。

总结:如果自用时间长,而对应的自用时间(CPU)小,则调优方向可以转为优化线程和I/O相关。

jVisualVM远程监控配置

    jVisualVM可以理解为JConsole的升级版本,对java程序及JVM虚拟机的监控更为全面。

    下面简单记录下远程配置JVisualVM的方法:

    1.需要创建jstatd.all.policy文件,内容:

grant codebase "file:${java.home}/../lib/tools.jar" {
         permission java.security.AllPermission;

};

    2.启动

    jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=x.x.x.x

    3.客户端连接

    进入JDK的bin目录,启动jvisualvm


遇到问题:CPU不受此JVM支持

解决方式:添加JMX连接



相关博文:JConsole远程监控配置:http://zuohao1990.blog.51cto.com/6057850/1787732


本文出自 “塞上名猪” 博客,请务必保留此出处http://zuohao1990.blog.51cto.com/6057850/1787733

以上是关于Jvisualvm简单使用的主要内容,如果未能解决你的问题,请参考以下文章

JVisualVM -Xverify:none 无法解决重定义失败,错误 62

如何自动将 JVisualVM 附加到短期程序?

jvm调试工具类使用 (jvisualvm.exe)

jVisualVM远程监控配置

jvisualvm的使用

如何使用jvisualvm进行cpu或内存抽样