background image

长沙

JAVA 培训欧柏泰克 http://www.cshope.net/JAVAkecheng/JVjishu/11061H52013.html

Java 性能分析工具哪个更好用?

在给客户的应用程序维护的过程中,我注意到在高负载下的一些性能问题。理论上,增

加对应用程序的负载会使性能等比率的下降。然而,我认为性能下降的比率远远高于负载的

增加。我也发现,性能可以通过改变应用程序的逻辑来提升,甚至达到极限。为了更详细的

了解这一点,我们需要做一些性能分析,自然也要用到一些分析工具。

Java 有许多的性能分析工具,可以帮助我们弄清楚这个问题,但是我们应该使用哪一

款工具呢

?

JAVA 培训欧柏泰克认为选择性能分析工具应满足这些基本的要求:

1.必须包括对应用程序的类、方法及时间的监测

2.必须包括对内存的监测

3.必须具有易用性

参考工具:

VisualVM

VisualVM 是一个资源分析工具,一直从 JDK 6更新到7.它默认内存和 CPU 的监视。它

可以告诉你哪个类和方法消耗资源,但它不会显示代码流程。

JProfiler

JProfiler 很容易安装,并且通过向导,我们可以选择应用服务器 用来运行应用程序。

我们可以使用

JPofiler 应用服务器的主目录,以及向导生成的一个单独的启动脚本。然后运

行服务器。在监听会话的过程中,它会提供几个选项。它可以记录内存的使用和

CPU 的使

用率。在查看

CPU 的使用率同时,可以看到执行路径。我们会发现应用程序大部分时间都

花在请求上。当然我们也可以将

IntelliJ 插件安装到 IDE 上,那么运行 JProfiler 会更加便利。

比如,可以直接启动

Tomcat.

YourKit

YourKit 的安装很简单。安装时有一个选项,可以安装一个插件到我们的 IDE.安装后,

运 行应用程序,使用该插件,它会自动连接到

YourKit.它有一个漂亮的用户界面可以查看

到内存和

CPU 的监测,同时也可以看到请求的执行路径。

JProbe

刚开始创建

JProbe 时可能会遇到点困难。安装并不是直接完成,我们需要对它进行配

置。它采用了类似

JProfiler 一样的设置。它会在我们的 Tomcat 目录中生成启动脚本。可

以通过脚本启动服务器并监听会话。它的界面包含有按钮和表格,其中可以看到内存的使用,

但无法在进程中找到执行路径。