- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
J2EE框架应用性能优化分析与研究
J2EE框架应用性能优化分析与研究
摘 要 随着J2EE的空前发展,基于J2EE体系结构的企业应用系统得到了广泛的应用。但是,由于J2EE的分布式结构及分层的体系结构的特点,使得业界对J2EE应用的性能问题的担忧提到了议事日程,如何对J2EE应用系统的性能调优也越来越引起企业的重视。本文以下部分具体论述基于J2EE应用的基本框架和技术要点,并根据经验总结了J2EE组件的性能优化的手段,希望能够对类似的应用和问题的解决起到参考和帮助的作用。
关 键 词 J2EE;性能优化;策略
中图分类号:TP311 文献标识码:A 文章编号:1671—7597(2013)032-052-03
1 J2EE框架概述
J2EE是一种利用Java平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构,其不仅巩固了JAVA标准版中的许多优点,例如编写一次、随处运行的特性、方便存取数据库的连接API、中间件技术以及能够在互联网应用中保护??据的安全模式等等,同时还提供了对JAVA应用组件以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。
2 J2EE结构的性能影响因素
一般情况下,最终用户对J2EE应用性能的体验与下面层次是紧密相关的。
根据上述J2EE的层次模型可以看出,J2EE的性能影响不仅包括底层硬件及平台操作系统的性能因素的影响,同时经验也不断地表明,性能下降的普遍原因是由组成框架应用的应用组件的设计问题和不佳的实现造成的。
3 性能优化的原则
根据经验,通常对系统进行性能优化时可以参考以下原则。1)针对时间比例最大的进行优化,效果才最明显。
2)在性能优化的过程中,一般是先平台、再数据库,最后程序,因为数据库及应用平台的优化不需要修改程序,修改的风险很小。
3)确定数据库的问题,需要进行分析判断,分析原则是先索引,后存储过程,最后表结构视图的优化。索引的优化是最简单也是通常最有效的方法,如果合理的使用会带来意想不到的效果。同时针对用户使用频度最高的数据库语句进行优化也是最行之有效的方法。
4)数据库优化的潜能挖光后,如果还是达不到性能要求或是还有问题,则要从程序来进行优化。
4 J2EE性能优化策略
针对J2EE应用调优的策略即包括主机操作系统的底层优化,也包括针对具体应用组件及应用平台的优化,由于针对主机操作系统的优化已经有了成熟的方法和策略,所以在此不予讨论。本文以下所介绍的优化策略主要针对应用平台、应用组件及数据库平台及语句的优化策略。
4.1 应用平台的优化策略
4.1.1 修改执行线程数
应用服务器分配给应用程序的执行线程数量严重地影响其内部操作和应用程序。分配的线程越多,在服务器中同时发生的动作就越多。在测试过程中,查看一个等待请求队列是否增大和CPU是否全额利用,即当CPU时间对服务器都有效,而所有线程都潜在地阻塞,不能服务一个新请求,可以通过提升执行线程数来提高服务器的性能。
4.1.2 执行后备属性
应用服务器在队列中的所有执行线程忙碌时,允许一定数量的连接放到连接后备中。当监控发现有许多被拒绝的连接时,可以通过在服务器调优页面的控制台修改后备属性,来增加数量一缓解执行压力。
4.1.3 JDBC连接池调优
正确配置JDBC连接池可以增加应用程序性能。把数据库连接池设置的太小可能会严重降低应用程序性能。在大多数应用程序中,一个池中最大连接的理想数等于同时使用应用程序的用户数,假设所有用户同时访问数据库导致池连接达到了最大连接数,那么当新的连接请求到达时则需要进入等待状态。相反,如果数据库连接池设置的太高,也能引起性能问题。创建的每个数据库的连接都需要付出内存的代价。所以,JDBC连接池的数量设置需要与数据库管理员一起结合生产环境考虑设置。
4.1.4 EJB池的调优
像使用JDBC连接池一样,应用服务器通过池化一些类型的EJB来节省分配请求的资源。如果设置的池太小将降低应用程序性能,也可以将这些池的初始大小设置得很高,在服务器启动时,就创建一定数目的池,增加内存的使用但潜在地提高了性能。
4.2 JVM优化策略
Java虚拟机对于提高服务器性能是高可调的。以下讨论在使用Weblogic应用服务器的一些调优JVM的常用选项,通过对这些选项的有效设置,以改善运行应用服务器的情况。
4.2.1 堆栈大小
在生产环境中启动应用服务器的重要步骤之一是设置内存堆栈的最大和最小尺寸。设置最大和最小相等是好的常用设置,这能确保JVM在调整堆栈大小上不浪费资源。调整这个堆栈大小会严重影响服务器性能,如设置较大可能会遇到性
文档评论(0)