gpt4 book ai didi

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

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 28 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章java开发中如何使用JVisualVM进行性能分析由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

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

我觉得其还有一个强大的地方就是不需要用代理启动(即如果要监视某个程序则需要用测试软件来运行程序方便其监视如YourKit这款同类的测试工具)的方式来运行,十分方便,只要是用Jdk环境运行的,打开此测试工具后即能看到并监视程度的运行状态,当然前提是要运行在同一个Jdk的环境中.

地址: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 。


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

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

找到可疑份子,可以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 。

最后此篇关于java开发中如何使用JVisualVM进行性能分析的文章就讲到这里了,如果你想了解更多关于java开发中如何使用JVisualVM进行性能分析的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com