`

可与jprofiler/yourkit媲美的java诊断工具Visualvm

    博客分类:
  • JVM
阅读更多

一度我曾以为在java profile领域,很难有工具能超越jprofileryourkit

相比较jprofiler/ youkit优势:

 1)     开源免费

 2)     性能开销比jprofiler小很多.kylin性能优化项目中,jprofiler性能损耗大,而visualvm  基本不受影响。

3)     被监控端无需额外安装agent

 劣势:  没有jprofiler那样直观地树状展现方法调用栈。

 

 由于visualvm远程监控比本地监控少很多功能,所以visualvm建议安装在linux服务器端。

1.1.1   下载visualvm

Visualvm要求在jdk1.6_07上。

1.1.2   在被监控服务器上安装visualvm

      不用jdk自带的,因为jdk自带的滞后。从https://visualvm.dev.java.net/download.html下载。

      先部署好java 6以上环境。

      大部分应用都在linux上,所以visualvm安装在linux目录。

1.1.3   Windows机器上安装xming,输出linux图形化界面

 

主要是将linux display定向到windows xming server上。Xming使用请参考http://www.51testing.com/?uid-13997-action-viewspace-itemid-99183


 

linux shell

 export DISPLAY=windows ip:0

./visualvm &

如:

 1.1.4   安装插件

Tools->plugin

 

 1.1.5   设置java允许jmx访问

 少这个步骤,则cpu sample会无数据。

 可以设置java jmx选项为无验证。

-Dcom.sun.management.jmxremote.ssl=false    -Dcom.sun.management.jmxremote.authenticate=false

 

  也可以:

[admin@QA-145-1 ~]$ ps -ef|grep java

admin   32289 32281 99 14:06 pts/7   00:09:21 /usr/alibaba/java/bin/java -Dprogram.name=run.sh -server -Xms2g -Xmx2g -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=128m -XX:+UseCompressedOops -XX:+DoEscapeAnalysis -XX:+AggressiveOpts -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Djboss.server.home.dir=/home/admin/kylin/deploy/jboss_server -Djboss.server.home.url=file:/home/admin/kylin/deploy/jboss_server -Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl -Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XML11Configuration-Dcom.sun.management.config.file=/home/admin/kylin/deploy/conf/jmx/jmx_monitor_management.properties-Dapplication.codeset=GBK -Ddatabase.codeset=ISO-8859-1 -Ddatabase.logging=false -Djava.endorsed.dirs=/usr/alibaba/jboss/lib/endorsed -classpath /usr/alibaba/jboss/bin/run.jar:/usr/alibaba/java/lib/tools.jar org.jboss.Main

 

[admin@QA-145-1 ~]$ cat /home/admin/kylin/deploy/conf/jmx/jmx_monitor_management.properties |grep -v '#'

com.sun.management.jmxremote.port=2009

com.sun.management.jmxremote.ssl=false

com.sun.management.jmxremote.authenticate=true

com.sun.management.jmxremote.password.file=/home/admin/kylin/deploy/conf/jmx/jmx_monitor_users.properties

com.sun.management.jmxremote.access.file=/home/admin/kylin/deploy/conf/jmx/jmx_monitor_roles.properties

[admin@QA-145-1 ~]$ cat /home/admin/kylin/deploy/conf/jmx/jmx_monitor_users.properties |grep -v '#'

monitor monitor

control control1

 

[admin@QA-145-1 ~]$ cat /home/admin/kylin/deploy/conf/jmx/jmx_monitor_roles.properties |grep -v '#'

monitor  readonly

control  readwrite

1.1.6   采样cpu或者memory对象

点击samplecpu sample检查哪些方法耗时多。

 

 Memory sample:检查哪些类占内存多

 

这里点击settings设置过滤规则。

 1.1.7   安装jconsole plugin

点击'Add JAR/Folder'按钮,

      

    添加JDK_HOME/demo/management/JTop/JTop.jar

 

参考:

http://zzxanadu.javaeye.com/blog/600183

 1.1.8   安装eclipse插件

 

https://visualvm.dev.java.net/eclipse-launcher.html

 

下载解压到eclipse安装目录。

 

 运行应用程序,弹出的launcher选择visualvm,将激活visualvm.

分享到:
评论

相关推荐

    yourkit jprofiler 6.0.2

    YourKit JProfiler是一款强大的Java应用程序性能分析工具,主要用于检测和优化Java应用的性能问题。它在版本6.0.2中提供了对Windows平台的支持,使得开发者可以深入剖析Java虚拟机(JVM)的行为,以便更好地理解和...

    可视化性能监控工具VisualVM

    VisualVM可以与其他工具如JProfiler、YourKit等集成,实现更深度的性能分析。同时,VisualVM也支持插件扩展,开发者可以开发自定义插件以满足特定需求。 总的来说,VisualVM作为一款免费且功能全面的Java性能分析...

    jvm监控工具visualVM

    VisualVM拥有丰富的插件生态系统,如JProfiler、YourKit等第三方工具可以通过插件接口与VisualVM集成,增强其功能,如更详细的内存分析、代码覆盖率等。 8. **JDK版本兼容性** VisualVM适用于多种JDK版本,从Java...

    使用JProfiler 6.2 监控本地java程序运行

    JProfiler是一款强大的Java性能分析工具,可以帮助开发者深入理解应用程序的运行情况,定位内存泄漏、CPU消耗过高等问题。本文将详细介绍如何使用JProfiler 6.2来监控本地的Java程序。 首先,了解JProfiler的基本...

    jprofiler8.0.1 全功能的Java剖析工具

    **JProfiler 8.0.1 - 全面解析Java性能优化的专业工具** JProfiler是一款强大的Java...总之,JProfiler是Java开发者不可或缺的工具之一,它的强大功能可以帮助开发者提升代码质量,优化系统性能,从而提升用户体验。

    Java8 VisualVM 插件.zip

    Java 8 VisualVM 插件是一组用于增强VisualVM工具的功能扩展,VisualVM是Oracle公司提供的一个强大的Java应用程序性能分析工具。它允许开发者对JVM(Java虚拟机)进行深入的监控和诊断,包括内存使用、线程分析、CPU...

    yourkit java profiler for unix

    YourKit Java Profiler是一款强大的性能分析工具,专为Unix操作系统设计,用于监控和优化Java应用程序。它提供了详尽的内存和CPU使用情况分析,帮助开发者深入理解项目的性能瓶颈,从而提高应用的运行效率。 在内存...

    jprofiler_windows-x64_9_2_1.part2

    jprofiler_windows-x64_9_2_1.part2还有一个jprofiler_windows-x64_9_2_1.part1,两个同时下载放到同一个目录,解压任意一个就可以了

    jProfiler7 java内存分析 linux版本

    jProfiler7作为一个强大的Java性能诊断工具,对于任何Linux环境下的Java开发人员来说都是必备的。熟练掌握其使用,可以有效地提升Java应用程序的性能,减少资源浪费,防止内存泄漏,从而提高整体系统的稳定性和效率...

    jprofiler java开发软件性能测试工具

    Java开发过程中,性能优化是至关重要的一步,而`jProfiler`正是这样一个强大的工具,专为Java开发者设计,用于深入分析应用程序的性能。标题中的“jprofiler java开发软件性能测试工具”表明,jProfiler是一个针对...

    基于Java的Visualvm 基于JAVA的CPU硬件资源管理器源程序.zip

    6. **插件扩展性**:VisualVM允许添加第三方插件,扩展其功能,如JProfiler、YourKit等性能分析工具的轻量级替代。 现在,我们转向其源程序,深入学习如何实现这些功能: 1. **源码结构**:VisualVM的源代码会包含...

    YourKit.Java.Profiler.v9.0.3+注册机

    JProfiler是一个全功能的Java剖析工具(profiler),JProfiler可以找到性能瓶颈、抓住内存泄漏(memory leaks)、并解决多线程的问题。它让你得以对heap walker作资源回收器的root analysis,可以轻易找出内存泄漏;...

    Java性能监控工具Jprofiler4.3.2

    Java性能监控工具JProfiler是Java开发中的重要辅助软件,它为开发者提供了深入的性能分析功能,帮助优化应用程序的运行效率。JProfiler 4.3.2版本是该工具的一个历史版本,虽然较新版本可能拥有更多特性,但4.3.2...

    jprofiler 性能检测工具下载---下载不扣分,回帖加1分,欢迎下载,童叟无欺

    jprofiler 3.3.2 性能 工具 java jprofiler 性能检测工具下载---下载不扣分,回帖加1分,欢迎下载,童叟无欺 jprofiler 3.3.2 性能 工具 java jprofiler 性能检测工具下载---下载不扣分,回帖加1分,欢迎下载,...

    VisualVM程序性能分析工具 v2.1.7.zip

    VisualVM支持插件扩展,可以与JProfiler、YourKit等其他性能分析工具结合使用,增强其功能。此外,它还可以与JConsole、JMX Console等工具协同工作,提供更全面的监控视图。 7. **优化建议**: 通过VisualVM收集...

    visualVM插件包Branch GC等

    VisualVM支持第三方插件,可以从VisualVM的官方网站下载安装,增加更多功能,如JProfiler、YourKit等集成,进一步提升性能诊断能力。 7. **使用技巧** - 使用VisualVM实时监控Java应用,及时发现性能异常。 - ...

    YourKit jProfiler eclipse3.5插件

    YourKit jProfiler eclipse3.5插件

    visualvm离线插件包

    此外,对于更现代的JDK版本,可能需要寻找更新的VisualVM版本或其替代品,如JProfiler或YourKit Java Profiler,因为VisualVM的最新稳定版是1.4.2,之后的更新主要集中在JDK 11及以上版本的支持上。 综上所述,...

    jprofiler java内存监控

    总结来说,JProfiler是Java开发者不可或缺的工具之一,通过其丰富的功能,可以帮助我们有效地监控和优化Java应用程序的内存、线程和CPU使用,提升程序的运行效率。正确使用JProfiler,可以显著降低性能问题的发生,...

Global site tag (gtag.js) - Google Analytics