Java/J2EE应用Profiler整合&治理实践挑战

日期: 2011-11-24 作者:Madhu Tanikella翻译:刘志超 来源:TechTarget中国 英文

在《Java/J2EE应用Profiler整合:调试类型和调试流程》中,介绍了调试类型和调试流程。   在这节中,我要介绍Java调试引擎、Java/J2EE应用和Java应用服务器整合的实践挑战,提出建议和方法,以克服问题,使profiling活动可以有效的进行。这些问题大体上分为几类,如下面的图3.这些类别和补救的方法会在未来的几节详细讨论。 图3 调试整合的问题   问题   如果JVM参数包含-XX参数,Java profiler和基于Java的应用服务器的整合,可能会不稳定,或者失败,尤其是一些“Debugging”和“Diagnostic”标志。

要明白JVM选项的含义,指定-XX参……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

《Java/J2EE应用Profiler整合:调试类型和调试流程》中,介绍了调试类型和调试流程。

  在这节中,我要介绍Java调试引擎、Java/J2EE应用和Java应用服务器整合的实践挑战,提出建议和方法,以克服问题,使profiling活动可以有效的进行。这些问题大体上分为几类,如下面的图3.这些类别和补救的方法会在未来的几节详细讨论。

图3 调试整合的问题

图3 调试整合的问题

  问题

  如果JVM参数包含-XX参数,Java profiler和基于Java的应用服务器的整合,可能会不稳定,或者失败,尤其是一些“Debugging”和“Diagnostic”标志。要明白JVM选项的含义,指定-XX参数会不稳定,不建议随便使用它。此外,这些选项更改,不会另行通知[1].

  因此,在这里试图获得如-XX标志,当整合Profiler和Java应用服务器时,如果Profiler引擎的一些异常行为出现时,要找出问题。

  推荐的解决方案

 JVM –XX Flag  描述  影响 建议 
 -XX:+AggressiveOpts 此标志为打开“单点性能优化”选项,在SUN JDK1.5,或更高的版本中可以打开。这个标志会做最新的性能调整,然而,有一个忠告是该选项是实验性的,在某方面可以优化,此选项可以在生前前评估,部署应用程序到产品中改变。
(注意:要用-XX:+UnlockDiagnosticVMOptions & -XX:-EliminteZeroing选项)
JVM可能不会启动Java引擎/调试或者应用程序可能会崩溃禁用这些选项或者从JVM参数列表中删除这些,可以启用调试活动
 -XX:-EliminateZeroing该选项禁用新创建的字符数组对象的初始化。通常使用-XX:+UnlockDiagnosticVMOptions
If -XX:+AggressiveOpts
JVM可能不会启动Java引擎/调试或者应用程序可能会崩溃
 -XX:+UnlockDiagnosticVMOptionsJava/JVM一定要在“diagnostic”标志前面JVM可能不会启动Java引擎/调试或者应用程序可能会崩溃
 -XX:-ExtendedDTraceProbes使用性能影响的“dtrace”探头,可以用来监测JVM内部的状态和活动,以及Java应用程序是否运行(在JDK 1.6中引用,只在Solaris 10以上可用)如果这个选项已经启用,添加额外的探能引擎会使JVM行为变成unknown
 -Xrunhprof[:options]HPROF实际上是JVM本地代理库,通过命令行选项会自动加载,JVM启动时,如果通过JVM参数,就会变成JVM流程的一部分。通过在启动时提供HPROF选项,用户可以从HPROF中请求各种类型的heap和cpu调试的特性如果这个选项已经启用,添加额外的探能引擎会使JVM行为变成unknown 

  在《Java/J2EE应用Profiler整合问题及解决方案》中,我们将具体解释这些不可协调的应用程序、安全权限、应用程序缓存;在J2EE服务器中,COTS产品的默认检测以及待定的操作系统。

相关推荐

  • 构建高性能J2EE应用的十个技巧

    构建高性能的J2EE应用不但需要了解常用的实施技巧。下面介绍最常用的10种有效方法,可帮助架构设计师们快速成为这方面的专家。

  • 开发J2EE应用应遵循的几点原则

    软件开发技术从来就没有”银弹”,所以J2EE技术也不是万能的。但是,如果我们在结合具体商业需求的基础上,合理的应用好J2EE技术,其结果可想而知。

  • 构建高性能J2EE应用的五种核心策略

    对于J2EE,我们知道当开发应用时,在架构设计阶段的决定将对应用的性能和可扩展性产生深远的影响。现在当开发一个应用项目时,我们越来越多地注意到了性能和可扩展性的问题。

  • 部署基于JBoss 的 J2EE应用程序

    JBoss,作为J2EE应用服务器,以其EJB容器卓越的性能、技术的潮流性、开发部署J2EE应用的方便性赢得了很多J2EE开发者的信赖。其中,免安装、基于JMX构架、热部署(Hot Deploy)、快速开发EJB应用等几项特征与其他商用服务器相比,显得有些得意忘形的样子。尽管其本身没有重大的缺陷,但毕竟是Open Source的开发模式,文档很少,因此要很好的掌握、精通开发基于JBoss的应用还是显得有些力不从心。