最大化J2EE和数据库互操作的性能【外文翻译】.doc

上传人:文初 文档编号:5845 上传时间:2018-04-01 格式:DOC 页数:6 大小:38.50KB
下载 相关 举报
最大化J2EE和数据库互操作的性能【外文翻译】.doc_第1页
第1页 / 共6页
最大化J2EE和数据库互操作的性能【外文翻译】.doc_第2页
第2页 / 共6页
最大化J2EE和数据库互操作的性能【外文翻译】.doc_第3页
第3页 / 共6页
最大化J2EE和数据库互操作的性能【外文翻译】.doc_第4页
第4页 / 共6页
最大化J2EE和数据库互操作的性能【外文翻译】.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、1外文翻译MAXIMIZEJ2EEANDDATABASEINTEROPERABILITYFORPERFORMANCESOURCEJAVAWORLDAUTHORROBERTMANESSAFTERSOMEINITIALINVESTIGATION,THEJ2EEDEVELOPMENTTEAMDETERMINESTHATTHEPROBLEMISNTINTHEJ2EETIER,BUTCANBETRACEDTOTHEDATABASETHEDATABASETEAMRESPONDSWITHARGUMENTSTHATTHEPROBLEMREALLYIS,AFTERALL,INTHEJ2EETIERBLAMESM

2、ANSHIPESCALATES,TEAMSPIRITEVAPORATES,CONFUSIONPREVAILS,ANDCUSTOMERSANDREVENUECONTINUETODISAPPEARTHISCOMMONSCENARIOHIGHLIGHTSASIGNIFICANTNEEDTOSUPPORTBETTERINTEROPERABILITYBETWEENTHEJ2EEANDDATABASETIERS,ITDEPARTMENTSNEEDTOBEABLETOACTMOREQUICKLYANDDECISIVELYTHEBASICCHALLENGENAMINGTHECULPRITJ2EEDEVELOP

3、ERSAREOFTENFORCEDTOPARTICIPATEINTHEBLAMEGAMEWHENLAGGINGRESPONSETIMESDRIVEWEBSITEUSERSAWAYTHEAPPLICATIONSPROGRAMMERSDEVELOPONTHEMIDDLETIERMUSTINTEROPERATEWITHTHEDATABASE,ANDWHENAPERFORMANCEBOTTLENECKAPPEARS,ITMAYSHOWUPASAPROBLEMONTHEJ2EETIERWHENTHEDATABASEISTHEUNDERLYINGCAUSETHEREALPROBLEMISINTEROPER

4、ABILITYHOWDOYOUOPTIMALLYTUNEINTEGRATIONBETWEENTHOSETWOTIERSTOMAXIMIZEYOURAPPLICATIONSPERFORMANCEMORETOTHEPOINT,HOWCANYOUVIEWTHEBOTTLENECKS,IDENTIFYTHEREALTROUBLEMAKERS,ANDDEALWITHTHEMASQUICKLYASPOSSIBLEMANYAPMAPPLICATIONPERFORMANCEMANAGEMENTTOOLSAREAVAILABLETOHELPIDENTIFYANDRESOLVEPERFORMANCEBOTTLEN

5、ECKSTWOCOMMONAPPROACHESTOFINDINGBOTTLENECKSINJ2EEAPPLICATIONSAREYOUUSEADASHBOARDWITHCOLOREDALERTSTOMONITORTHESTATUSOFYOURSYSTEMSGREENMEANSALLISWELLYELLOWORREDMEANSYOUHAVEAPERFORMANCEPROBLEMTODEALWITHTHEDASHBOARDCANALSOREPORTONRESPONSETIMESFROMTHEDIFFERENTCOMPONENTSOFYOURAPPLICATIONINSTEADOFWAITINGFO

6、RPERFORMANCETODETERIORATEENOUGHTOTRIGGERADASHBOARDALERT,YOUTAKEAPROACTIVEAPPROACHANDTRYTOIDENTIFYEXCESSIVERESPONSETIMESOR2EXCESSIVERESOURCEUSAGEYOUCANDOTHATBYEXAMININGTHETOPSERVICEREQUESTSINTERMSOFRESPONSETIMEANDDRILLDOWNTOSEEWHATCOMPONENTSTHEYINVOKEISOLATINGSQLSTATEMENTSLETSSUPPOSEITSTAKINGTOOLONGT

7、ORETRIEVEACCOUNTINFORMATIONEVERYUSERWHOASKSFORANACCOUNTSUMMARYWAITS15SECONDSFORARESPONSEISTHEPROBLEMONTHEDATABASESIDEISITINTHEAPPLICATIONCODEISITINTHENETWORKITMAYSIMPLYBETHATTHEUSERSINTERNETCONNECTIONISVERYSLOWINTHISPARTICULARCASE,HOWEVER,YOUSUSPECTTHATADATARETRIEVALISSUEISTOBLAMEONEAPPROACHTOFINDIN

8、GTHECAUSEISTOASKTHEAPMTOOLTODISPLAYALLTHESQLSTATEMENTSISSUEDBYTHEAPPLICATION,SORTEDBYRESPONSETIME,SOYOUCANSEEIFANYSQLSTATEMENTISTAKINGTOOLONGFORTHEWRONGREASONSOMESQLSTATEMENTSSIMPLYTAKEALONGTIMESUCHASAREQUESTFORALISTOFALLTHETRANSACTIONSPERFORMEDBYTHEACCOUNTFORANENTIREYEARYOUNOWLOOKATTHETOPSQLSTATEME

9、NTONTHELISTITGOESTOTHEDATABASEANDITSRESPONSETIMECONTRIBUTIONISONESECONDTHISISNOTREALLYBADIFTHISISTHEWORSTPERFORMINGSQLSTATEMENT,THEPROBLEMMAYNOTBEWITHTHESQLSTATEMENTSATALLSOTHENEXTQUESTIONSAREISTHISSOMETHINGTHATORIGINATESINTHEAPPLICATIONTIERWHOISINVOKINGTHISSTATEMENTHOWMANYTIMESIFANAPPLICATIONINVOKE

10、SASQLSTATEMENTMANYTIMESMORETHANYOUEXPECT,YOUMAYREASONABLYSUSPECTTHATTHEAPPLICATIONISATFAULTTHEAPMTOOLCOMESTOYOURRESCUEYOUSIMPLYCLICKONTHESQLSTATEMENTANDALINKTAKESYOUTOITSENTIREINVOCATIONTREE,BEGINNINGWITHTHEREQUESTFROMTHECUSTOMERFORANACCOUNTSUMMARYANDENDINGWITHTHESQLSTATEMENTTHATWENTTOTHEDATABASENOW

11、YOUHAVETWOMOREIMPORTANTPIECESOFINFORMATIONYOUKNOWFORCERTAINYOURELOOKINGATTHESPECIFICREQUESTFORTHESERVICEREQUESTYOUWEREINVESTIGATING,ANDYOUCANSEEEACHCOMPONENTSINDIVIDUALCONTRIBUTIONTORESPONSETIMEYOUNOWLOOKATTHEDESCRIPTIONOFTHECOMPONENTTHATINVOKEDTHESQLSTATEMENT,ANDYOUSEETHATITSRESPONSETIMEIS9SECONDSI

12、TSCLEARLYAMAJORCONTRIBUTORTOTHE15SECONDWAITTIMEFRUSTRATINGYOURCUSTOMERSTHELISTDISPLAYEDBYTHEAPMTOOLALSOSHOWSTHATTHISCOMPONENTINVOKEDTHESQLSTATEMENT7TIMESTHISTELLSYOUTHATMOSTOFTHE9SECONDSCONSUMEDBYTHISCOMPONENTWERESPENTINVOKINGTHESQLSTATEMENTNOTONLYISTHECOMPONENTPERFORMINGTOOMANY3CALCULATIONS,ITSALSO

13、INVOKINGTHESQLSTATEMENTMANYTIMESTHERECOULDBEAGOODREASONFORTHIS,BUTITSBEYONDTHEABILITYOFANYPERFORMANCEMANAGEMENTTOOLTOTELLYOUSOTHEIMPORTANTTHINGISTHATYOUHAVEPINPOINTEDTHEPROGRAMCOMPONENTTHATMUSTBEINVESTIGATEDGOODAPMTOOLSCANALSOPROVIDECLEARSUGGESTIONSFORDEALINGWITHTHEPROBLEMISITREALLYADATABASEPROBLEML

14、ETSLOOKATOUREXAMPLEFROMANOTHERVIEWPOINTLETSSAYTHATINSTEADOFINVOKINGTHESQLSTATEMENTTOOMANYTIMES,THECOMPONENTINQUESTIONONLYINVOKEDITONCE,BUTTHATINVOCATIONCONSUMEDMOSTOFTHE15SECONDSNOWTHEQUESTIONIS,WHYISTHISSINGLESTATEMENTTAKINGSOLONGTOEXECUTETHEPROBLEMISNOTINTHECODE,SOITPROBABLYLIESONTHEDATABASESIDEWH

15、ATYOUNEEDNOWISAPERFORMANCEMANAGEMENTTOOLTHATENABLESYOUTOMOVEYOURINVESTIGATIONOFASPECIFICSERVICEREQUESTGETACCOUNTSUMMARYTOTHEDATABASETIERGOINGBACKTOYOURLISTOFSQLSTATEMENTS,YOUCLICKONADRILLDOWNLINKASSOCIATEDWITHTHESQLSTATEMENTYOUREINTERESTEDIN,WHICHTAKESYOUFROMTHEJ2EESIDETOTHEDATABASESIDEYOURENOWLOOKI

16、NGATYOURSQLSTATEMENTINTHECONTEXTOFANORACLEDATABASEORANOTHERDATABASEPRODUCTTHETOOLMAYHELPYOUPINPOINTTHEPROBLEMONTHEDATABASESIDEANDMAYALSOOFFEREXPERTTUNINGADVICETHATDATABASEADMINISTRATORSDBASCANUSETOIMPROVEDATABASEPERFORMANCEITMAYBETHATTHEDISKONWHICHTHETABLESPACEISLOCATEDHASABADRESPONSETIME,ANDAMOVETO

17、ANOTHERDISKISINDICATEDITMAYBETHATANINDEXISMISSING,ANDYOUCANSPEEDDATARETRIEVALBYCREATINGANEWINDEXPERHAPSTHEREARETOOMANYTHREADSRUNNINGINPARALLELONTHEDATABASE,ANDYOUNEEDTODOSOMEPARTITIONINGTOALLEVIATECONCURRENCYPROBLEMSTHEREAREOTHERPOSSIBILITIESDATARETRIEVALMAYBETAKINGTOOLONGBECAUSETHERESALONGWAITTOGET

18、ADATABASECONNECTIONTHECODEISFINE,ANDTHEDATABASEISRUNNINGWELL,BUTTHEWAITTIMEMAYBETELLINGYOUTHATTHEDATABASECONNECTIONPOOLISSIMPLYNOTLARGEENOUGHTOHANDLEPEAKOREVENNORMALTRAFFICYOUCANQUERYTHEAPPLICATIONSERVERTOLEARNHOWMANYCONNECTIONSHAVEBEENDEFINED,COMPARETHATNUMBERWITHTHETYPICALNUMBEROFCONCURRENTREQUEST

19、S,ANDQUICKLYDETERMINEWHETHERMORECONNECTIONSARENEEDEDLEVERAGINGINTEROPERABILITYYOURPERFORMANCEMANAGEMENTTOOLSHOULDDOMORETHANJUSTIDENTIFY4CONTRIBUTORSTOPOORRESPONSETIMEONTHEJ2EETIERITSHOULDALLOWYOUTOLOOKATTHEINTERACTIONBETWEENTHEJ2EETIERANDTHEADJACENTDATABASETIERANDPROVIDETHEMEANSFORANALYZINGPERFORMAN

20、CEPROBLEMSONBOTHTIERSTHEUSEOFANINTEGRATEDAPMPRODUCTBYJ2EEDEVELOPERSANDDBASISNECESSARYFORANEFFICIENTHANDLINGOFPERFORMANCEPROBLEMSITALSOALLOWSTHEJ2EEANDDATABASEGROUPSTO“SPEAKACOMMONLANGUAGE“MOSTAPMSOLUTIONSTARGETASINGLETIERWITHINTHEARCHITECTUREANDOFFERDIAGNOSTICSOFTHATTIERALONEUSINGTHISAPPROACH,TIMEIS

21、WASTED,BLAMESTORMINGRESULTS,AND,MOREOFTENTHANNOT,PROBLEMSARENOTSOLVEDTODAYSCOMPLEXARCHITECTURESANDSOPHISTICATEDTECHNOLOGIESMEANTHATTHEINTEROPERATIONOFONETIERWITHANOTHEROFTENRESULTSINPERFORMANCEPROBLEMSTHATAREIMPOSSIBLETOFINDWITHTHISAPPROACHLEADINGAPMPRODUCTSAREAVAILABLETODAYTHATALLOWYOUTODRILLDOWNIN

22、CONTEXTFROMTHEJ2EETIERINTOTHEDATABASETIERANDENSURETHETIMELYRESOLUTIONOFPERFORMANCEISSUES,REGARDLESSOFWHATTIERTHEYORIGINATEDFROM译文最大化J2EE和数据库互操作的性能资料来源JAVA世界作者罗伯特马内斯经过一番初步调查,J2EE开发团队认为问题并不在J2EE层,但可以追溯到数据库。数据库团队回应的理由是真正的问题是,毕竟层,在J2EE。BLAMESMANSHIP升级,团队合作精神蒸发,混乱普遍存在,客户和收入不断消失。这种常见的情况突出了重大的需求支持数据库层之间的互操

23、作性更好的J2EE和,IT部门必须能够采取更迅速和果断的行动。一基本的挑战命名的罪魁祸首J2EE开发人员往往被迫在怨天尤人,而是落后时参加网站用户的响应时间驱动器了。程序员开发的应用程序在中间层与数据库必须互通,当性能瓶颈出现时,它可能会显示层,作为J2EE的一个问题上时数据库是根本原因。真正的问题是互操作性。你怎么调这两个层次之间的集成优化最大化您的应用程序的性能更重要的一点,你怎么能查看的瓶颈,找到真正的肇事者,并处理它们尽快5许多的APM(应用性能管理)工具可用来帮助识别和解决性能瓶颈。两种常见的方法在J2EE应用程序来发现瓶颈是使用带有颜色的警示仪表板来监控您系统的状态。绿色表示一切正

24、常,黄色或红色意味着你有一个性能问题来处理。该仪表板还可在您的报告中不同组件的应用程序响应时间从。与其等待性能恶化到足以引发仪表板警示,你采取主动的态度,尝试找出过度反应时间或资源过度使用。让我们假设它的时间太长检索帐户信息。谁总结要求每个用户的帐户等待一个响应15秒。是关于数据库方面的问题呢在应用程序代码在网络中呢这可能仅仅是该用户的互联网连接速度非常慢。在这种特殊情况下,然而,你猜想一个数据检索的问题是难辞其咎的。找到一种方法的原因是要求APM的工具来显示所有的SQL语句的应用程序发出的,由响应时间排序,所以你可以看到,如果任何SQL语句花费的时间太长错误的理由(简单地采取一些SQL语句很

25、长一段时间,如要求整个一年的列表,一个执行的所有交易的账户)。你现在看看顶部名单上的SQL语句。到数据库和它的响应时间是一秒钟的贡献。这是不是真的不好,如果这是表现最差的SQL语句,该问题可能无法与所有的SQL语句。云于是,第二天的问题是这是一些在应用程序层起源谁是调用这个语句多少次如果应用程序调用SQL语句的次数超过你预期,你可以合理地怀疑该应用程序故障所在。APM的工具,来到你的救援。您只需点击一个链接SQL语句,并带你到它的整个调用树,开始与总结要求从客户的帐户和数据库结束与SQL语句去了。现在你有两个更重要的信息件你知道你正在调查某些看你的具体要求的服务请求,你可以看到每个组件的个人贡

26、献的响应时间。你现在看陈述的描述的组件的调用的SQL,并发现它的响应时间是9秒。这显然是一个重大贡献者,15秒等待时间令人沮丧的客户。APM的工具列表中显示的也表明这个组件调用SQL语句的7倍。这告诉你,这个组件消费最多的9秒花费了调用SQL语句。不仅是组件进行过多的计算,它也是调用SQL语句多次。有可能是一个很好的理由,但它这样的管理能力之外的任何性能工具来告诉你。重要的是,你必须准确地指出了方案的组成部分,必须予以追究。良好的APM工具也可以提供清晰的问题与建议的处理。二它是一个真正的数据库的问题让我们来看看我们从另一个角度的例子。假设,而不是调用SQL语句太多次,问题组件只引用这一次,但

27、该调用消耗大部分的15秒。现在的问题是,这是为什么单个语句需要如此长的时间执行这个问题是不是在代码,因此它可6能在数据库端所在。你现在需要的是一个性能管理工具,让你移动你的要求调查的具体服务获取帐户概要到数据库层。想要回到你的SQL语句列表,你点击一个钻取端数据库链接相关联的SQL语句你感兴趣的,是带您从J2EE的一面。你现在在看你的SQL语句在数据库中的产品范围内的一个ORACLE数据库或另一个。该工具可以帮助您找出问题的侧面对数据库,也可以提供专业的调整建议,数据库管理员(DBA)可以使用它来提高数据库的性能。它可能是位于磁盘上的表空间有一个坏的响应时间和磁盘移动到另一个指示。这可能是因为

28、缺少一个索引,你可以通过创建一个新的高速数据检索索引。或许有太多的线程数据库上并行运行,你需要做一些分区,以减轻并发问题。还有其他的可能性。数据检索可能花费的时间太长,因为有一个漫长的等待获取数据库连接。代码是正确的,并且数据库是运行良好,但等待的时间可能会告诉你,数据库连接池是根本没有大到足以处理高峰甚至正常的交通。您可以查询,以了解如何应用服务器的连接已经确定,相比之下,并发请求的数量与典型的数量,并迅速决定是否需要更多的连接。三利用互操作性您的绩效管理工具应该做的不仅仅是查明穷人在J2EE层响应时间贡献者。它应该让你看看之间的相互作用的J2EE层和数据库层和相邻的两个层提供的手段问题,对分析性能。在DBA使用综合的APM产品由J2EE开发人员,需要一个性能问题的有效处理。它还允许J2EE和数据库组“讲一个共同的语言”。大多数的APM解决方案的目标是独自一两层架构,并提供诊断的单层内。使用这种方法,时间浪费了,怪攻坚的结果,而且,更很多时候,问题没有得到解决。当今复杂的架构和先进的技术意味着不可能互操作的一层与另一表现往往造成的问题,要找到这种方法。APM的主导产品目前已经上市,让您深入的背景下从数据库层J2EE层进入,确保及时解决性能问题,无论他们来自什么层次。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 外文翻译

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。