`

将NetBeans Profiler集成到Sun Java System Web Server 7.0

 
阅读更多
<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog336280.html" frameborder="0" width="336" scrolling="no" height="280"></iframe>

尽管分析简单的应用程序通常是一项简单的任务,但将分析器设置为在 Web 服务器或应用服务器上运行需要一些额外的步骤。然而,在 NetBeans IDE 中配置 Profiler(以下称为 NetBeans Profiler)通常一次即可轻松完成。NetBeans Profiler 不但支持 SolarisWindows Linux (Ubuntu) 平台下的各种分析任务,它还有许多优势。这些优势包括:

l 动态字节码重构,此功能可在运行时从 Java 虚拟机提取字节码并向其插入字节码,以生成方法入口、出口等事件。然后,借助该事件数据,NetBeans Profiler 会收集和显示相关性能统计信息。这意味着无需重新启动应用程序即可在运行时管理分析任务。例如,可收集 CPU 性能数据,重置结果,然后启用线程监视,以便查看许多有用的统计信息,包括有关内存使用和线程管理的信息。

l 对性能跟踪任务提供强大支持,如使用 CPU 性能分析器、内存分析器和线程分析器执行的跟踪任务。NetBeans Profiler 还包括测定所选代码片段执行时间的代码片段分析器,因此不再需要将 System.currentTimeMillis() 包含进代码。

l NetBeans IDE 紧密集成,它在同一环境下拥有代码浏览器和调试器。

l 低开销,同时具有高性能。

l 支持本地和远程分析,灵活方便。

目录

<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_i1027" style="WIDTH: 0.75pt; HEIGHT: 1.5pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/im/a.gif" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image001.png"></imagedata></shape>

l GUI 概述

l 下载与初始设置

l 集成步骤

l 参考

GUI 概述

<shape id="_x0000_i1025" style="WIDTH: 0.75pt; HEIGHT: 3pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/im/a.gif" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image001.png"></imagedata></shape>

本部分主要介绍相关 GUI

1 显示了 NetBeans Profiler 控制台。

<shape id="_x0000_i1026" style="WIDTH: 218.25pt; HEIGHT: 450pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/webserver/reference/techart/nb-profiler-ws/fig1.jpg" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image004.jpg"></imagedata></shape>

1: NetBeans Profiler 控制台

此处可以执行许多分析任务,其中包括以下任务:

l 启动、停止或重置结果缓冲器。

l 切换分析任务。

l 查看虚拟机遥测。

l 查看实时结果或拍摄数据快照;还包括打开、删除、导出或加载快照。

2 显示了 NetBeans IDE 中分析任务的向导。

3 显示了 CPU 性能测试。

<shape id="_x0000_i1030" style="WIDTH: 450pt; HEIGHT: 317.25pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/webserver/reference/techart/nb-profiler-ws/fig3.jpg" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image006.jpg"></imagedata></shape>

3: CPU 性能测试

4 显示了线程。

<shape id="_x0000_i1031" style="WIDTH: 450pt; HEIGHT: 315.75pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/webserver/reference/techart/nb-profiler-ws/fig4.jpg" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image007.jpg"></imagedata></shape>

4: 线程

下载与初始设置

<shape id="_x0000_i1032" style="WIDTH: 0.75pt; HEIGHT: 3pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/im/a.gif" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image001.png"></imagedata></shape>

开始执行分析任务前,首先下载以下内容:

l Java 2 Platform, Standard Edition (J2SE Platform) 5.0, Update 4或更高版本。

l NetBeans IDE 5.0 5.5

l NetBeans Profiler 5.0 5.5

l 可选。NetBeans IDE plug-in for Web Server 7.0,此程序可管理 IDE 中的 Web Server实例。请参见“使用 NetBeans 插件管理实例”部分。

有关如何在 IDE 中安装插件和管理 Web Server 7.0 实例的详细信息,请参见文章 Deploying Web Applications to Sun Java System Web Server 7.0 With NetBeans 5.x

l 可选。NetBeans IDE 中的可视化 GC 插件,它以图形方式显示垃圾回收的统计信息。请参见“使用可视化 GC 插件查看垃圾回收统计信息”部分。

接着,执行以下操作:

1. 启动 NetBeans IDE

注意顶部的 Profile 选项卡。

2. 在目标虚拟机上运行一次校准:从顶部的 Profile 菜单中,选择 Advanced Commands > Run Profiler Calibration

集成步骤

本部分描述了如何将 NetBeans Profiler 集成到 Web Server 7.0 中。

配置 Web Server 实例
首先,配置 Web Server 实例,以便从管理命令行界面 (CLI) wadm 加载 NetBeans 代理库。有关 wadm 的详细信息,请参见 Sun Java System Web Server 7.0 CLI 参考手册

注意:将所有命令键入到一行,尽管某些内容由于页面宽度限制会换到下一行。

1. 确保管理服务器正在运行,且已与其建立了连接。下面是命令行和输出示例:

$ wadm -u admin -w /space/admin.pwd

Sun Java System Web Server 7.0U1-Technology-Preview-1 B03/13/2007 11:03

wadm>

2. 为要分析的 Web Server 实例创建 Java 虚拟机分析器:

wadm> create-jvm-profiler --config=test NetBeans

CLI201 Command 'create-jvm-profiler' ran successfully

wadm> list-jvm-profilers --config=test --all --verbose

name enabled

------------

NetBeans true

wadm>

3. 添加若干选项,以便在启动 Web Server 实例后加载代理库:

wadm> create-jvm-options --config=test --profiler=NetBeans -- -agentpath:/space/netbeans-5.5/

profiler1/lib/deployed/jdk15/solaris-sparc/libprofilerinterface.so=/space/netbeans-5.5/

profiler1/lib,5140

CLI201 Command 'create-jvm-options' ran successfully

wadm> list-jvm-options --config=test --profiler=NetBeans

-agentpath:/space/netbeans-5.5/profiler1/lib/deployed/jdk15/solaris-sparc/

libprofilerinterface.so=/space/netbeans-5.5/profiler1/lib,5140

wadm>

4. 部署实例的配置:

wadm>deploy-config test

CLI201 Command 'deploy-config' ran successfully

连接 NetBeans Profiler
最后,连接 NetBeans Profiler

1. NetBeans IDE 中的 Profile 菜单中,选择 Attach Profiler 以显示 NetBeans Profiler 向导(参见 2)。单击 Attach Wizard 按钮。

2. Target Type 下拉菜单选择 J2EE Web/App Server 并从 Server Type 下拉菜单选择 Generic Web/App Server。单击 Next

3. 在“Select Server location”下选择 Local Remote

如果选择 RemoteNetBeans Profiler 会在屏幕底部提示指定远程系统的配置。在 Hostname 字段中键入远程主机名,然后从下拉菜单中选择主机的操作系统。

4. 在“Select attach method”下选择 Direct。单击 Next

NetBeans IDE
将显示连接设置并提示用户查看这些设置。然后,将显示 Choose Integration Type 屏幕。

5. 选择 Manual。单击 Next

此时显示 Choose Target JVM 屏幕。

6. 根据运行服务器的 Java 平台选择“Java5.0_04 and newer”。单击 Next

此时显示 Review Integration Steps 屏幕。上一小节第 3 步中已经执行了屏幕上要求的步骤。

7. 启动 Web Server 实例。

下面是实例中显示的后续日志消息的示例:


[15/Mar/2007:11:00:35] info ( 7092): CORE1116: Sun Java System Web Server 7.0U1-Technology-

Preview-1 B03/13/2007 11:03

[15/Mar/2007:11:00:35] warning ( 7093): CORE3283: stderr: Profiler Agent: Initializing ...

[15/Mar/2007:11:00:35] warning ( 7093): CORE3283: stderr: Profiler Agent: Options: >/space/

netbeans-5.5/profiler1/lib,5140

[15/Mar/2007:11:00:35] warning ( 7093): CORE3283: stderr: Profiler Agent: Initialized

successfully

[15/Mar/2007:11:00:35] info ( 7093): CORE3282: stdout: Profiler Agent: Waiting for connection

on port 5140 (Protocol version: 2)

8. 选择分析任务并单击 Attach

Web Server
实例将继续运行。

下面是本地分析任务的输出示例:

[15/Mar/2007:11:02:06] info ( 7093): CORE3282: stdout: Profiler Agent: Established local

connection with the tool

[15/Mar/2007:11:02:09] info ( 7093): CORE5076: Using [Java HotSpot(TM) Server VM, Version

<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span lang="EN-US" style="FONT-SIZE: 8.5pt; COLOR: #666666">1.5.0</span></chsdate>_09] from [Sun Microsystems Inc.]

[15/Mar/2007:11:02:19] info ( 7093): WEB0100: Loading web module in virtual server [test] at [/

search]

[15/Mar/2007:11:02:34] info ( 7093): HTTP3072: http-listener-1: http://kosmo:1894 ready to

accept requests

[15/Mar/2007:11:02:35] info ( 7093): CORE3274: successful server startup

使用 NetBeans 插件管理实例
如果已安装了用于 Web Server 7.0  NetBeans 插件,则可在 IDE 中管理 Web Server 实例。如图 5(监视线程窗口的屏幕截图)所示,NetBeans IDE 在左窗格的 Servers 下列出了 Web Server 7.0。窗格底部显示了 NetBeans Profiler Web server 实例之间的握手消息(handshake messages)日志。

<shape id="_x0000_i1033" style="WIDTH: 450pt; HEIGHT: 305.25pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/webserver/reference/techart/nb-profiler-ws/fig5.jpg" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image008.jpg"></imagedata></shape>

5: 监视线程

IDE 中启动实例的步骤:

1. 从顶部的 Window 菜单中,选择 Runtime > SJSWS 7.0

2. 右键单击配置名称,然后从上下文菜单中选择 Start Instance

6 显示了 Runtime 窗口。

<shape id="_x0000_i1034" style="WIDTH: 215.25pt; HEIGHT: 311.25pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/webserver/reference/techart/nb-profiler-ws/fig6.jpg" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image009.jpg"></imagedata></shape>

6: 运行时窗口

使用可视化 GC 插件查看垃圾回收统计信息
如果已在 NetBeans IDE 中安装了可视化 GC 插件,则可在此查看垃圾回收的统计信息。图 7 显示了一个示例。

<shape id="_x0000_i1028" style="WIDTH: 450pt; HEIGHT: 304.5pt" alt=" " type="#_x0000_t75"><imagedata o:href="http://developers.sun.com/webserver/reference/techart/nb-profiler-ws/fig7.jpg" src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image010.jpg"></imagedata></shape>

7: 垃圾回收统计信息




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics