j2ee软件生命周期性能管理解决方案内容摘要:

,以及执行次数过多的代码行或方法。 3. 在进行 代码单元测试和功能测试的时候, 通过运用代码测试跟踪工具JProbe Coverage, 一方面确定测试用例是否完整,另一 方面测试是否存在无效代码,提高软件质量,尽早测试,降低整体开发成本; JProbe 可以和 IDE 工具 (如 Jbuilder、 Eclipse、 WSAD)、 Build 工具 (如 Ant)、测试工具 (如 Junit)等进行无缝集成,将 JProbe 完全融入到开发、测试环节中 ,形成开发、测试 JAVA 代码优化规范 ,运用 JProbe 的 过程流程 如下 : 1. JProbe 可以和交互式方法测试集成在一起。 首先开发人员使用 IDE 工具从版本控制系统中取出 负责 开发的组件代码,一旦做了更改,开发人员需要使用 JUnit 等 测试工具进行测试或者手工进行测试。 无论是哪种测试,都可以使用 JProbe 分析测试,分析更改对实际造成的影响。 开发人员可以按照需要保存 Jprobe 的快照 ,比如性能快照、内存分析快照、线程分析快照等,可以做更详细的分析,也可以和上一次的版本结果进行比较。 最后,开发人员可以将结果生成报告分发给开发经理或内 部质量控制小组。 开发经理审查报告确认问题,并快速给出反馈,通知相关的开发人员进行修改或修复问题。 2. JProbe 也可以参与到自动执行工作流程中, JProbe 可以和 Ant 工具进行无缝集成,提供 Ant 相关的标签定义,如触发器、拍快照、生成报告等,从而可以在无人值守的时候进行自动分析。 比如,可以在晚上某个时候调度启动 Ant 工具进行应用程序的 build、单元测试等工作,同时 JProbe相关功能被激发,可以自动保存性能、内存、线程分析等各种快照,并存放在指定的位置上,根据这些快照, JProbe 进一步可以自动生成报 告。 所有 Jprobe 以上的工作都做为 Ant 工具运行中的一 部分 而进行。 开发人员使用 JProbe 进行内存泄露检查和系统瓶颈分析,从代码级保障应用系统的性能;在集成测试中进行代码交付的检查和优化,确保不存在内存泄露、 J2EE 软件生命周期 性能 解决方案 11 性能瓶颈问题及代码覆盖问题;从而实现软件生命周期的 主动 性能优化,避免问题而不是在出现问题后解决问题。 测试 应用 组件优化 由于 J2EE多层架构的特点和直身的复杂性, J2EE应用在开发完毕上线之前必须进行必要的测试 ,保证应用性能质量。 目前企业对 IT建设中的 J2EE应用系统的质量和运行可靠性越来越重 视,很多企业如移动、电力、银行等纷纷建立自己的 QA部门,并引入自动化测试软件和应用管理软件,以加强对关键、核心业务应用的质量控制和运行管理。 随着应用的增多和越来越复杂, 企业 IT部门 也 迫切需要 一些 智能化的 J2EE 诊断工具,在应用系统上线前的压力测试阶段和在实际的生产环境和真实负载的情形下,跟踪和分析 J2EE 应用组件及代码中的性能问题。 针对以上的情况, Quest公司 提供以下的工具和解决方法 ,确保应用的性能质量 : 1. 借助 Quest的 J2EE 应用性能诊断工具 PerformaSure,可以 对 J2EE分 布式系统进行全面的分析,包括 J2EE应用服务器、 Web服务器、数据库服务器、网络负载等 , 可以 对应用 进行 JAVA组件级和 SQL语句的性能评估。 2. 当需要进行代码级检查 或 系统中存在非 J2EE 的 JAVA 应用需要做性能检测和内存使用检查时,则使用 JProbe 工具进行代码级 检测。 J2EE 软件生命周期 性能 解决方案 12 在 性能 、压力 测试阶段 , Quest 提供如下 的解决问题的思路: 使用压力测试工具 对系统进行 压力测试 , 尽管 可以 对应用进行性能的评估,但压力测试工具是一种黑盒测试, 当某个功能点出现性能问题需要进一步分析组成功能的各组件的性能时,压力测试工具则显得无能为力;因此,为了进行深入诊断,就 需要借助 J2EE 优化诊断工具 PerformaSure, 以 事务为中心 进行业务录制和组件方法级的分析。 运用 PerformaSure 可以基于测试用例在虚拟压力下对目标系统相关业务进行深入分析,得到 JAVA 各组件的执行调用路径图和精确执行时间,结合压力测试工具,最终给出非常准确的性能参考和评估。 同时在测试过程中, PerformaSure还可以及时发现和诊断系统在高负载下是否存在性能问题,保证系统上线前的压力测试的最佳效果。 PerformaSure针对 J2EE应用的特点,提供 强大的性能数据收集分析 功能。 对进行压 力测试的系统,在压力测试过程中,可以启动 PerformaSure对被测系统的压力负载下的事务、响应处理情况进行录制;对生产系统,当发现有性能问题时,可以启动 PerformaSure对生产系统进行自动录制。 录制时可以设置数据采样频率、采样策略、对需要或不需要收集的页面、组件的过滤等;特别地, PerformaSure考虑到对被测系统的影响,录制选项里提供了是否录制到组件级还是更深入地收集数据的级别调节,保证满足各种收集数据的需求。 当录制好一定时间段的系统运行状况的信息后, PerformaSure将其保存为Session文件,并提供如下的分析性能问题的步骤和方法手段: 1. 查找有问题的用户事务,定位问题出现在哪个环节。 PerformSure定义 每一个用户请求响应为完整的一个事务, 通过录制到的 Session可以查看到每个事务的执行时间,查找到执行时间最长的事务。 同时, PerformSure还可以从服务器、应用各业务层、组件级等做各种角度的钻取,深入分析、并且可以定位问题出现在 J2EE多层应用的那个层面,包括 Web服务器、应用服务器、数据库等。 2. PerformaSure对事务可以进行自动关联性能数据 分析,给出事务的各种性能图表,形成全局视图,包括组成事务的各个部分如 HTTP、 Servlet、 EJB、 JDBC等在整个事务中的各自执行时间,确定资源占用情况。 J2EE 软件生命周期 性能 解决方案 13 3. PerformaSure通过对事务相关的各组件形成实际的调用路径图,可以快速查找 事务相关的 低效率的 Servlet、 JSP、 EJB、 Java类以及相应具体的方法,并给出每个组件、方法的执行时间,找到存在性能瓶颈的问题或应用中需要优化的地方。 如下图所示为 PerformaSure对基于 BEA Portal和 Hibernate架构的应用系统的分析,显示 组成事务的各方法调用路径图,以不同色标显示区分各组件方法执行的时间长短,图中红色表示执行时间较长的方法,定位到是应用层中 Hibernate架构中的一个方法,并给出详细的时间统计数据: 图 32 PerformaSure 对请求事务进行方法级的分析 4. PerformaSure还 提供对 J2EE应用中所有和数据库操作相的关 SQL语句的 进一步 分析能力, 通过专门的 Sql Broswer工具 找出运行缓慢的 SQL语句,确认应用中对数据库的不恰当的使用。 5. 除以上的分析诊断手段外, PerformaSure收集和提供 了非常全面的各种性能数据,并以节点树结构的形式呈现给分析人员,包括对应用服务器和 JVM等的详细性能数据,能够检测应用服务器的配置是否有问题,是否存在内存泄漏问题等,及时发现不易察觉的性能问题。 如下图为对 WebSphere及其上应用的详细性能情况,并以树状形式展现出来,点击任一性能指标,会给出随时间变化曲线图。 J2EE 软件生命周期 性能 解决方案 14 图 33 PerformaSure 提供的 J2EE 应用性能数据视图 6. 如果需要查看网络流量情况,通过 PerformaSure的 Network Traffic Broswer可以 对机器网络流量 进 行 详细分析,确认网络负载是否饱和以及对应用性能的影响。 7.如果对有问题的组件需要深入到 JAVA代码内部,则通过 PerformaSure可以直接生成 JProbe需要的文件,由 JProbe进行进一步的分析。 上线试运。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。