欢迎来到天天文库
浏览记录
ID:43745922
大小:458.58 KB
页数:25页
时间:2019-10-13
《【精品】诊断应用数据库的性能瓶颈》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、诊断应用数据库的性能瓶颈时间:2004-07-22文章工具作者:PeterChapman,RiniGahir曰推荐给朋友浏览次数:3137吕打印文章本文关键字:JDBC,性能,监控,EJB,瓶颈,数据库J2EE的崛起J2EE作为Web应用开发的标准企业计算平台面也其实力越來越强大,曰益普及。J2EE支持遗留应用程序和接口、多种操作系统、分布式和群集式环境,以及高量关键任务应川程序,同时支持安全和管理与监控。通过提供一种开发分布式、町仲缩应用程序的框架利蓝图,J2EE使公司及H开发者能够集屮注意力去编写模块化的定制应用程序代码,并且不必担心安全、资源管理和可伸缩性的
2、细节。行-业领先的应用程序服务器,例如BEAWebLogicServer,能提供许多功能和服务。多个WebLogic服务器实例的群集和故障恢复功能提供了可靠性、可川性和可伸缩性。它们也提供诸如女全和资源管理之类的其他服务,例如执行线程池、EJB高速缓存和JDBC池。笫三方所吗的Java数据库连接(JavaDatabaseConnectivity,JDBC)骡动程序进一步抽彖和简化不同数据库管理系统(DBMS)间数据存取的编码。这就是一个强人的平台,该平台能够人大简化并且抽象开发分布式、高量企业应用程序的低层细节。J2EE性能的挑战听上去没有什么会出问题,是吗?的确
3、如此,除了应用程序不能达到绘终用户或者服务级协定所要求的性能标准Z外。一个开发项日和商业创新是否成功要视其迅速检测、诊断和解决这些性能问题的能力而定。由于它们的复杂性日益增加,与早期的保硬应用程序环境相比,在这些多层的、分布式J2EE应用程序屮的性能瓶颈更难以诊断。J2EE环境包含多层相互连接的软件和硕件组件,它们相互作用,满足任何既定的最终用户请求。性能团队的成员一设计师、开发者、应用服务器管理员和数据.库专家——他们有自己对系统的见解,而且可能拥有他们自己的经验仓库或者“设备中心”的诊断工貝。但是这个因队的成员怎样一同工作将问题分离出來呢?如果没有对J2EE系
4、统所有组件的全面广泛的了解,如果他们不能相互交互,那么一位性能专家怎样找出哪台服务器速度慢?哪个组件速度慢?哪种资源不足?数据阳引擎是主要瓶颈,还仅仅是一个次要因索呢?这种挑战可能会使无准备的人或装备不良的人畏缩不前。这种困惑町能使团队的成员焦头烂额,或者更严重时,他们会任意指责过失。“是应用程序,还是数据库?”公司里最常见的挫折就是面对表现不佳的分布式J2EE应用程序感到闲惑:“它是应用程序,还是数据库?我们应该从哪里开始修理?”通常情况下,会有人斗胆作出一种推测,不再继续在浩繁的代码寻找错误的或者低效率的算法,或者放弃彻底搜寻SQL语句和数据库农格的作法。换句
5、话说,他们挑出应用程序或者数据库(或者在最坏情况下,两个都选),并努力将从谜团中分离出來的片断最优化。令人遗憾的是,这种解决问题的观点经常是过度简化的,这是因为应用程序、数据库、WebLogicServer都不是在孤立地运转。对这个问题的一种综合解决方法需要捉高对这个相互联系的系统内所有三个部分的能见度:WebLogic资源利川和配置、应川程序架构以及数据库查询的执行,而且包括基本的硬件基础设施性能。有了对这些了系统相互作用的了解,性能团队的成员就能冇效地分离冇问题的组件,并将问题交给正确的职能专家进行处理。对相互之间关系的了解是关键在此,了解和相互关系是两个关键
6、词。没有这两个关键词,检测和根除的要求就便诊断极其艰难。我们需要了解WebLogic服务器运行时JMX的性能度量。我们需要了解SQL查询的计时和结构,以及数据库引擎所运行的存储过程。而且最重要的是,我们需要了解最终用户发出的请求在跨越整个分布式系统时的端到端计时,而>1•所有的组件要与JDBC连接池交互,DBMS的调用要以显式的基于单个请求的方式来制定。我们不仅需耍了解方法层级的应川程序计时,而且需要了解每个组件与其他组件相互作用形成应川程序架构的方式。大多数J2EE性能监视工具所提供的分离度量方法和JDBC计时都脱离了应用程序架构,所以几乎是没有用的。分离的SQ
7、L语句执行响应次数也是如此,脱离了该语句产生的位逢、被调用的次数或者与其最终用户请求的数据库的相互作用,几乎也是没有用的。理想的工具解决方案对定制的J2EE应用程序与WebLogic服务器资源和DBMS和互作用的方法提供深入的洞察,并捉供对这些相互作用怎样影响每个最终用户事务的总响应时间的深入理解。这些相耳作用的高级表现概述如图1。典型的应用数据库性能瓶颈现在或许你正在想:“现在理论知识足够了,我怎样修复我的应用程序呢?”卜•而的章节将讨论性能瓶颈的三个主耍类型,它们是通过测量和分析许多现实吐界的J2EE应用程序的性能厉提炼出來的,包括儿个卓越的金融、电信、以及“
8、财富100
此文档下载收益归作者所有