赛迪网 > IT技术 Java > Java-企业应用
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

WebSphere Studio 中的J2EE应用程序概要分析 (2)

发布时间:2006.04.14 14:09     来源:www.51cto.com     作者:

选择 WebSphere J2EE 过滤器集阻止了代理收集与标准的 J2EE 包有关的数据。而我们想要收集的是与我们正在进行概要分析的应用程序有关的数据。为了达此目的,可以添加过滤器来包括 acme.* 包。单击 Add(上面打了圈),然后输入 Add filter 对话框中所示的值。单击 OK,然后选择 Next 以进行下一步操作。

一些来自您希望过滤掉的包中的数据会不合逻辑地出现在概要分析视图中。这是一个已知的问题。

各种概要分析选项(如图8所示)允许您进一步指定概要分析代理可以收集的性能数据的详细程度。选择适当的选项,然后单击 Next 以进行下一步操作。

图8. 指定概要分析选项

Profiler 现在配置完毕。单击 Finish

在成功地完成了 Profiler 的配置过程之后,系统就启动 Profiling 透视图。已配置的概要分析代理会显示在 Profiling Monitor 中。单击 OK以进行下一步操作。

图9. Profiler 设置完毕



执行阶段

可以通过几个图形查看器和统计查看器来查看任何已收集的的性能数据。右键单击概要分析代理(如下所示),然后打开以下视图: Package Statistics、Class Statistics、Method Statistic Object Reference

图10. 概要分析透视图 -- Profiler 视图

启动监控

在运行任何特定的测试用例之前,您需要启用概要分析代理上的监控;否则,就不会发生数据收集。要启用监控,可以切换到 Profiling 透视图。在 Profiling Monitor 视图中,右键单击该 Profiling 代理,然后选择 Start Monitoring

图11. Profiling 透视图——启用监控

练习对测试用例进行概要分析

如果服务器运行在概要分析模式下,您就可以立即对这些示例进行概要分析。应用程序的进入页面是 profiling.html 页面。从 J2EE 透视图——Navigator 视图中,选择 profiling.html 页,然后选择 Profile on Server

下面的图12中所示的页面将在内部 Web 浏览器中打开。该页面提供了两个可以进行概要分析的实验。从内部 Web 浏览器中,只选择特定的概要分析测试实验 URL,然后等待,直到显示结果页面为止。

图12. J2EE 透视图——运行客户机测试

选择实验#1将引出如下所示的页面:

图13. J2EE 透视图——实验1

实验1是一个简单的应用程序,它把 Employee 类的实例序列化成一个文件。在大多数分布式应用程序中,类的序列化是一个基本的活动。在这第一个实验中,Employee 类的所有成员都将进行序列化。然而,正如您将在实验2中看到的,Employee 类中的某些成员对序列化的目的来说可认为是不重要的,它们被标记为瞬态,并且不进行序列化。因此,实验2中的 Employee 类,需要进行的序列化工作将比较少,而且实验2的性能应该会好得多。不过,在运行实验2之前,我们将回到 Profiling Profiling 透视图,以进一步分析实验1的性能特征。

这些性能数据都是自动收集的,但是并不显示出来。选择 Refresh Views 使 Profiler 以最新的数据填充视图:

图14. 概要分析透视图-- Refresh 视图

下面的图15展示了 Profiling 透视图中的 Package Statistics 视图。该视图使您能够更全面地了解应用程序中的哪些包需要最多的对象实例和内存。如前所述,一些需要过滤掉的系统级包出现在此视图中。在我们的示例中, acme.business.domain package包是最耗资源的:

图15. Profiling 透视图——Package Statistics 视图

下面的图16显示了 Profiling 透视图中的 Class Statistics 视图。该视图展示了应用程序中的哪些类需要最多的对象实例和内存。在下面的视图中,类 ProjectNotTransientEmployee 需要最多的实例和内存,如字段 Total Instances 和 Total Size 所示。Collected 字段指示在全部实例中有多少作为垃圾回收了,又有多少内存由此释放了。因此,在 Active Size 字段显示的该类当前占用的内存数量中考虑了作为垃圾回收的实例。在用于实验1的示例中,我们可以看到(请参见下面的图16), NonTransientEmployeeProject 类需要最多的内存和全部实例中的大多数,其中没有一个显示为作为垃圾回收。

图16. Profiling 透视图——Class Statistics 视图

下面的图17显示了 Profiling 透视图中的 Method Statistics 视图。该图展示了哪些方法需要最多的执行时间。它还指示了调用一个方法需要多少时间。Base Time 字段指示运行一个方法需要多少时间,其中不包括花在调用和运行其他方法上的时间。Cumulative Time 字段指示执行一个方法的总时间是多少,其中包括花在调用和运行其他方法上的时间。Calls 字段指示调用特定方法所需的时间。Average Base Time 字段中的值等于 Base Time 字段中的值除以 Call 字段中的值。在用于实验1的示例中,,我们可以看到(请参见下面的图17), writeNonTransientEmployees() 方法尽管在此应用程序中只调用了一次,但是却显然需要最多的执行时间。而且,所有的时间都花在此方法中,而没有用在调用其他的方法上。

图17. Profiling 透视图——Method Statistics 视图

下面的图18显示了 Profiling 透视图中的 Object References Table 视图,它显示了对其他类的引用的数量。在下面的图18中,Number of References 字段没有填充。这是 Profiler 中一个已知的问题。

图18. Profiling 透视图——Object References Table 视图

既然您已经被引入了关键的 Profiling 视图,就关闭 Profiling 透视图并且停止 WebSphere Test Server ProfileServer。在 概要分析(Profiling)下再一次启动 ProfileServer。选择 profiling.html 页面,然后再一次选择 Profile on Server。尝试对实验2进行概要分析。下面的图19在内部 Web 浏览器中展示了 Experiment 2 的结果。再一次打开 Profiling 透视图,然后打开上面讨论的 Profiling 视图。在大多数情况下,实验的结果将使您确信实验2在内存和执行时间方面提供了更好的性能。

图19. J2EE 透视图——实验2

结束语

本文讨论了 WebSphere Studio Profiler 所用的结构组件,并且向您展示了如何安装、配置和使用 Profiler 来更好地理解应用程序的运行时行为。本文还讨论了如何在 Profiling perspective of WebSphere Studio 提供的各种视图中提交和解释性能数据。后续的文章将描述如何对运行在 WebSphere Application Server 上的远程应用程序进行概要分析以及如何使用 J2EE Request Profiler。


<<上一页 1 2


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 浅析J2EE与.NET平台优劣 (04-14) · J2EE/RI Pointbase数据库远程命令执行漏洞 (04-14)
· 论J2EE开发Web应用程序中的安全认证机制 (04-14) · 简析J2EE应用程序数据库类设计模式 (04-14)
· 解密达内 共享J2EE/.NET饕餮盛宴 (04-14) · .NET与J2EE大融合-JNBridgePro 3.0 发布 (04-14)
· JSR 286:Portlet Specification 2.0 草案发 (04-14) · 细说J2EE的发展历程 (04-14)
· 职场心得之论J2EE程序员的武功修为 (04-13) · 东方通应用服务器TongWeb再获电子政务新单 (04-12)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 信息化市场百家争鸣 SaaS深陷争议“泥潭”
· 提高管理水平 "两栖"CIO应具备的六大能力
· 国产ITIL运维先行者 四大厂商角力BI市场
· 金融行业GSN专题解决方案 企业网解决方案
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统