`

如何使用JVisualVM进行性能分析

    博客分类:
  • JAVA
阅读更多

地址:https://visualvm.dev.java.net/

连接

1、本地机器的程序直接可以监听到

2、远程机器的程序需要加上JVM参数

-Dcom.sun.management.jmxremote= true
-Dcom.sun.management.jmxremote.port= 9090
-Dcom.sun.management.jmxremote.ssl= false
-Dcom.sun.management.jmxremote.authenticate= false

备注:另外需要检查

hostname –i

看解析出来是否为本地的IP,如是127.0.0.1或者IP为多个IP中之一,则其他的IP无效,会连接不上。

这里有个分析案例,利用jvisualvm分析tomcat的问题:

http://blog.tty.nl/2010/09/03/using-visualvm-to-fix-live-tomcat-and-jvm-problems

 

插件安装

tools->plugin->Available Plugin 会有值得安装的插件,如:VisualGC JConsole


 

插件列表:https://visualvm.dev.java.net/plugins.html

 

注意:上面提供的端口配置有些麻烦,不如直接这样做:

要使用 VisualGC 必须在远程机上启动jstatd代理程序,否则会显示 “not supported for this jvm” 错误

而启动 jstatd 时会有一个权限问题,需要做如下修改:

nano /opt/sun-jdk- 1.6 . 0.26 /jre/lib/security/java.policy

nano /opt/sun-jdk-1.6.0.26/jre/lib/security/java.policy

增加下列行

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

};
 

然后启动 jstatd并且不要关闭

如:


Threads


查看线程的运行情况,运行、停止、睡眠、等待,根据这些结合实际程序运行的逻辑分析。

找到可疑份子,可以Thread Dump  找出具体是哪个线程在作祟。

参看这个例子:http://blog.tty.nl/2010/09/03/using-visualvm-to-fix-live-tomcat-and-jvm-problems

profile

关于如何使用,如何分析程序,可以参看这个例子:http://www.baptiste-wicht.com/2010/07/profile-applications-java-visualvm/

 

 

  • 大小: 48.4 KB
  • 大小: 149.7 KB
  • 大小: 33.4 KB
分享到:
评论
2 楼 奔跑的小牛 2016-11-03  
例子都打不开
1 楼 dwangel 2013-02-27  
按照这个article
http://stackoverflow.com/questions/834581/remote-jmx-connection
可以用参数 java.rmi.server.hostname
来声明要监控的IP
java -Djava.rmi.server.hostname=YOUR_IP

相关推荐

    JVisualVM进行性能分析中,jconsole需要的jtop插件

    JVisualVM进行性能分析中,jconsole需要的jtop插件,jdk1.8可用

    java开发中如何使用JVisualVM进行性能分析

    JVisualVM是由Sun提供的性能分析工具,如此强大的后盾怎能不强大?在Jdk6.0以后的版本中是自带的,配置好环境变量然后在运行中输入“JVisualVm”或直接到Jdk的安装目录的Bin目录下找到运行程序即可运行。如果是用Jdk...

    memoryAnalyzer,jemter,jvisualvm工具使用介绍

    详细文档介绍,大量步骤截图,一看就懂: ...jvisualvm是jdk自带工具,可以监控Java内存模型,是可视化的界面哦,分分钟对内存模型了如指掌,还可以监控线程情况,CPU使用情况,对性能优化有需求的同学最好学习下

    jvisualvm详解

    jvisualvm详解,帮助你了解JDK自带的JVM性能分析工具。

    async-profiler性能分析

    轻量级jvm性能分析工具,相比jvisualvm的profile,对jvm进程的性能影响低于10%,可作为线上监控使用

    visualvm 中文版

    可以使用VisualVM生成和分析海量数据、跟踪内存泄漏、监控垃圾回收器、 执行内存和CPU分析,同时它还支持在MBeans上进行浏览和操作。

    VisualVM_139 for mac

    它通过 jvmstat、JMX、SA(Serviceability Agent)以及 Attach API 等多种方式从程序运行时获得实时数据,从而进行动态的性能分析。同时,它能自动选择更快更轻量级的技术尽量减少性能分析对应用程序造成的影响,...

    深入JVM内核 - 原理、诊断与优化

    Jvisualvm介绍使用 介绍了Java堆的分析方法,以一个实例为基础,展示对堆的分析过程。 第九课 锁 baise锁 轻量级锁 自旋锁 介绍JVM中对多线程锁的实现。 第十课 class文件结构 ASM库介绍 介绍JVM规范中的最重要...

    jprofiler windows 64

    jvm分析性能必备工具,比jconsole、jvisualvm好用 可以在idea安装插件后关联 即可启动容器时 一直观察jvm性能,推荐开发人员使用。

    细述 Java垃圾回收机制→Java Garbage Collection Monitoring and Analysis1

    Java VisualVM可以用来 - 生成和分析堆内存的dump - 观察和操作MBeans - 监控垃圾回收 - 内存和CPU性能分析jvisualvm已经

    《JVM从入门到入魔》笔记.pdf

    3:JVM内存调优:JVM参数【标准参数、-X参数、-XX参数等】+常用命令【jps、jinfo、jstat、jstack、jmap】+常用工具【jconsole、jvisualvm、Arthas、MAT】+性能优化及总结+高并发场景分析+JVM性能优化指南。

Global site tag (gtag.js) - Google Analytics