一度我曾以为在java profile领域,很难有工具能超越jprofiler及yourkit。
相比较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对象
点击sample,cpu 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是一款强大的Java应用程序性能分析工具,主要用于检测和优化Java应用的性能问题。它在版本6.0.2中提供了对Windows平台的支持,使得开发者可以深入剖析Java虚拟机(JVM)的行为,以便更好地理解和...
VisualVM可以与其他工具如JProfiler、YourKit等集成,实现更深度的性能分析。同时,VisualVM也支持插件扩展,开发者可以开发自定义插件以满足特定需求。 总的来说,VisualVM作为一款免费且功能全面的Java性能分析...
VisualVM拥有丰富的插件生态系统,如JProfiler、YourKit等第三方工具可以通过插件接口与VisualVM集成,增强其功能,如更详细的内存分析、代码覆盖率等。 8. **JDK版本兼容性** VisualVM适用于多种JDK版本,从Java...
JProfiler是一款强大的Java性能分析工具,可以帮助开发者深入理解应用程序的运行情况,定位内存泄漏、CPU消耗过高等问题。本文将详细介绍如何使用JProfiler 6.2来监控本地的Java程序。 首先,了解JProfiler的基本...
**JProfiler 8.0.1 - 全面解析Java性能优化的专业工具** JProfiler是一款强大的Java...总之,JProfiler是Java开发者不可或缺的工具之一,它的强大功能可以帮助开发者提升代码质量,优化系统性能,从而提升用户体验。
Java 8 VisualVM 插件是一组用于增强VisualVM工具的功能扩展,VisualVM是Oracle公司提供的一个强大的Java应用程序性能分析工具。它允许开发者对JVM(Java虚拟机)进行深入的监控和诊断,包括内存使用、线程分析、CPU...
YourKit Java Profiler是一款强大的性能分析工具,专为Unix操作系统设计,用于监控和优化Java应用程序。它提供了详尽的内存和CPU使用情况分析,帮助开发者深入理解项目的性能瓶颈,从而提高应用的运行效率。 在内存...
jprofiler_windows-x64_9_2_1.part2还有一个jprofiler_windows-x64_9_2_1.part1,两个同时下载放到同一个目录,解压任意一个就可以了
jProfiler7作为一个强大的Java性能诊断工具,对于任何Linux环境下的Java开发人员来说都是必备的。熟练掌握其使用,可以有效地提升Java应用程序的性能,减少资源浪费,防止内存泄漏,从而提高整体系统的稳定性和效率...
Java开发过程中,性能优化是至关重要的一步,而`jProfiler`正是这样一个强大的工具,专为Java开发者设计,用于深入分析应用程序的性能。标题中的“jprofiler java开发软件性能测试工具”表明,jProfiler是一个针对...
6. **插件扩展性**:VisualVM允许添加第三方插件,扩展其功能,如JProfiler、YourKit等性能分析工具的轻量级替代。 现在,我们转向其源程序,深入学习如何实现这些功能: 1. **源码结构**:VisualVM的源代码会包含...
JProfiler是一个全功能的Java剖析工具(profiler),JProfiler可以找到性能瓶颈、抓住内存泄漏(memory leaks)、并解决多线程的问题。它让你得以对heap walker作资源回收器的root analysis,可以轻易找出内存泄漏;...
Java性能监控工具JProfiler是Java开发中的重要辅助软件,它为开发者提供了深入的性能分析功能,帮助优化应用程序的运行效率。JProfiler 4.3.2版本是该工具的一个历史版本,虽然较新版本可能拥有更多特性,但4.3.2...
jprofiler 3.3.2 性能 工具 java jprofiler 性能检测工具下载---下载不扣分,回帖加1分,欢迎下载,童叟无欺 jprofiler 3.3.2 性能 工具 java jprofiler 性能检测工具下载---下载不扣分,回帖加1分,欢迎下载,...
VisualVM支持插件扩展,可以与JProfiler、YourKit等其他性能分析工具结合使用,增强其功能。此外,它还可以与JConsole、JMX Console等工具协同工作,提供更全面的监控视图。 7. **优化建议**: 通过VisualVM收集...
VisualVM支持第三方插件,可以从VisualVM的官方网站下载安装,增加更多功能,如JProfiler、YourKit等集成,进一步提升性能诊断能力。 7. **使用技巧** - 使用VisualVM实时监控Java应用,及时发现性能异常。 - ...
YourKit jProfiler eclipse3.5插件
此外,对于更现代的JDK版本,可能需要寻找更新的VisualVM版本或其替代品,如JProfiler或YourKit Java Profiler,因为VisualVM的最新稳定版是1.4.2,之后的更新主要集中在JDK 11及以上版本的支持上。 综上所述,...
总结来说,JProfiler是Java开发者不可或缺的工具之一,通过其丰富的功能,可以帮助我们有效地监控和优化Java应用程序的内存、线程和CPU使用,提升程序的运行效率。正确使用JProfiler,可以显著降低性能问题的发生,...