会员注册 | 登录 | 微信快捷登录 支付宝快捷登录 QQ登录 微博登录 | 帮助中心 人人文库renrendoc.com美如初恋!
站内搜索 百度文库

热门搜索: 直缝焊接机 矿井提升机 循环球式转向器图纸 机器人手爪发展史 管道机器人dwg 动平衡试验台设计

   首页 人人文库网 > 资源分类 > PDF文档下载

外文资料--Performance comparison of dynamic web platforms.pdf

  • 资源星级:
  • 资源大小:492.87KB   全文页数:11页
  • 资源格式: PDF        下载权限:注册会员/VIP会员
您还没有登陆,请先登录。登陆后即可下载此文档。
  合作网站登录: 微信快捷登录 支付宝快捷登录   QQ登录   微博登录
友情提示
2:本站资源不支持迅雷下载,请使用浏览器直接下载(不支持QQ浏览器)
3:本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

外文资料--Performance comparison of dynamic web platforms.pdf

PerformancecomparisonofdynamicwebplatformsVarshaAptea,1,TonyHansenb,,PaulReeserbaDepartmentofComputerScienceandEngineering,IndianInstituteofTechnologyBombay,Mumbai400076,IndiabATTLabs,200LaurelAve,Middletown,NJ07748,USAReceived7August2002accepted7August2002AbstractOverthelastfewyears,theWorldWideWebhastransformeditselffromastaticcontentdistributionmediumtoaninteractive,dynamicmedium.TheWebisnowwidelyusedasthepresentationlayerforahostofonlineservicessuchasemailandaddressbooks,ecards,ecalendar,shopping,banking,andstocktrading.AsaconsequenceHyperTextMarkupLanguageHTMLfilesarenowtypicallygenerateddynamicallyaftertheserverreceivestherequest.FromtheWebsiteproviderspointofview,dynamicgenerationofHTMLpagesimpliesalesserunderstandingoftherealcapacityandperformanceoftheirWebservers.FromtheWebdeveloperspointofview,dynamiccontentimpliesanadditionaltechnologydecisiontheWebprogrammingtechnologytobeemployedincreatingaWebbasedservice.SincetheWebisinherentlyinteractive,performanceisakeyrequirement,andoftendemandscarefulanalysisofthesystems.Inthispaper,wecomparefourdynamicWebprogrammingtechnologiesfromthepointofviewofperformance.ThecomparisonisbasedontestingandmeasurementoftwocasesoneisacasestudyofarealapplicationthatwasdeployedinanactualWebbasedservicetheotherisatrivialapplication.Thetwocasesprovideuswithanopportunitytocomparetheperformanceofthesetechnologiesattwoendsofthespectrumintermsofcomplexity.Ourfocusinthispaperisonhowcomplexvs.simpleapplicationsperformwhenimplementedusingdifferentWebprogrammingtechnologies.Thepaperdrawscomparisonsandinsightsbasedonthisdevelopmentandperformancemeasurementeffort.q2002PublishedbyElsevierScienceB.V.KeywordsDynamicWebCommonGatewayInterfaceFastCGICþþJavaServletsJavaServerPagesPerformanceComparison1.IntroductionTheWorldWideWebWWWfirstemergedadecadeagoasamediumtorenderhypertextdocumentsthatwerestoredontheInternet,onauserscomputer,usingspecialsoftwarethebrowserandanewprotocolHTTPHyperTextTransferProtocol.Forthefirstfewyears,theWWWgrewprimarilyasanewmediuminwhichstaticcontentcouldbepublished,andinformationshared.ThecontentwaspublishedintheformofHTMLHyperTextMarkupLanguagefiles,whichwereservedbyWebservers,onrequestsfrombrowsers.However,overthelastfewyearstheWWWhastransformeditselffromastaticcontentdistributionmediumtoaninteractive,dynamicmedium.ContentontheWebisnowoftenpersonalized,andthereforedynamicallygenerated.TheWebisnowwidelyusedasthepresentationlayerforahostofonlineservicessuchasemail,ecards,ecalendar,andaddressbooks,shopping,banking,andstocktrading.Asaconsequence,theHTMLfilesthatarerenderedbytheclientsbrowserarenowtypicallygenerateddynamicallyaftertheWebserverhasprocessedtheusersrequest.ThisdynamicgenerationofHTMLfileshasnothappenedwithoutanassociatedperformancecost.JustwhenInternetusersweregettingaccustomedtoclickandwaitondialuplinesduetographicsrichWebsites,dynamicallygeneratedcontentstartedproliferatingontheWeb.Nowusersmustwaitnotonlyforthenetworkdelaybutalsofortheserversideprocessingdelayassociatedwithservingarequestdynamically.Inmanycases,thisisturningouttobethelargestcomponentofthedelay.FromtheWebsiteproviderspointofview,dynamicgenerationofHTMLpagesimpliesalesserunderstandingoftherealcapacityoftheirWebservers.ThevendorprovidedhitspersecondcapacityoftheWebserverisnolongerenough,asthisonlypertainstostaticHTMLfiles.ComputerCommunications262003888–898www.elsevier.com/locate/comcom01403664/03/seefrontmatterq2002PublishedbyElsevierScienceB.V.PIIS01403664020022191ThisworkwasdonewhilethisauthorwaswiththeNetworkDesignandPerformanceAnalysisDepartment,ATTLabs,Middletown,NJ07748,USA.ThisauthorhaspreviouslypublishedunderhermaidennameofVarshaMainkar.Correspondingauthor.Emailaddressmainkaratt.comT.Hansen.FromtheWebdeveloperspointofview,dynamicWebcontentimpliesanadditionaltechnologydecisiontheWebprogrammingtechnologytobeemployedincreatingaWebbasedserviceorproduct.Thisdecisionisbasedonseveralfactors.Amongthefactorsconsideredareeaseofprogramming,richnessoffeatures,maintainability,reliability,andperformance.SincetheWebisinherentlyinteractive,performanceisakeyrequirement,andoftendemandscarefulanalysisofthesystems.Inthispaper,wecomparetheperformanceoffourWebprogrammingtechnologies,namelyJavaServlets,JavaServerPages,CGI/CþþandFastCGI/CþþasmallerversionofthisstudywaspresentedinRef.1.ThestudywasmotivatedbyarealneedtomakeatechnologychoicefordevelopingsoftwarethatwouldsupportaWebbasedservice.Astudyofexistingliteratureshowedvaryingconclusionsabouttheperformancesuperiorityofonetechnologyovertheother.ProponentsoftheJavaplatformconsistentlyclaimsuperiorperformanceofservlettechnologymainlyduetotheeliminationoftheoverheadofprocesscreation2,3.Ontheotherhand,astudydoneinRef.4thatcomparesCGI,FastCGIandservletsshowedservletstobetheslowestofthethree.AsimilarcomparativestudyhasbeendoneinRef.5,focusingonWebtodatabaseapplications,whichshowedJavaservletstobebetterthanCGIprograms.Furthermore,although4brieflyprovidessomeexplanationabouttheresults,anindepthanalysisandinsightabouttheresultswasnotavailableintheliteraturethatwesurveyed.Oneconclusionfromthevariabilityoftheresultswasalsothattheperformanceofthetechnologydependsontheapplication.Inthispaper,thecomparisonisbasedontwocasesoneisacasestudyofacomplexapplicationthatwasdeployedinanactualWebbasedservicetheotherisatrivialapplication.Themethodologyofperformanceanalysiswasstresstestingandmeasurement.Performancemeasurementratherthanmodelingmademostsenseinthiseffort,sinceaquickturnaroundofresultswasnecessaryandtheaccuracyofresultswasrequiredtobehigh.Thetwocasesi.e.thecomplexandthetrivialprovideduswithanopportunitytocompareperformanceofthesetechnologiesattwoendsofthespectrumofapplications,intermsofcomplexity.Theperformanceorderofdifferenttechnologiesisseldomabsoluteitdependsgreatlyonthenatureoftheapplication.Ourfocusinthispaperisonhowcomplexvs.simpleapplicationsperformwhenimplementedusingdifferentWebprogrammingtechnologies.Amongthepaperssurveyed,webelievethisistheonlypaperpresentingasystematicbottleneckanalysisofeachofthetechnologies,andtheonlyonethatdemonstratesthattheperformancerankingcouldbereversed,basedontheapplication,whileprovidinginsightonwhythishappens.ThemainobservationsfromthisworkwereasfollowsIngeneral,FastCGIoutperformedCGI,whileJSPoutperformedJavaservlets.Inthecaseofacomplexapplication,theCGIbasedtechnologiesoutperformedtheJavabasedtechnologiesbyafactorof3–4£,withJavaperformancelimitedbysoftwarebottlenecksintheJVM.Inthecaseofatrivialapplication,therelativeperformancewasreversed,asJavaoutperformedCGIbyafactorof2–3£.TherestofthepaperisorganizedasfollowsinSection2weprovidethemotivationforconductingsuchacomparativestudy,andinSection3wedescribebrieflythetechnologiesthatwecompared.Section4describestheperformancemeasurementandanalysismethodology,Section5describesthecasestudytestingresultsindetail,andSection6describestheresultsoftestingatrivialapplication.Finally,Section7summarizesourresults,andSection8providessomeconcludingremarks.2.MotivationTheapplicationcontextforthiscasestudywasanewWebbasedmessagingservice.SuchaservicewouldinvolveabackendthatwouldincludethecoremessagingrelatedserversIMAP,POP,LDAP,SMTP,andafrontend,orapresentationlayerthatwouldserveasmiddlewarebetweentheWebbrowserandthemessagingserver.Thecoreserverswerechosentobeestablishedmessagingproducts.ThepresentationlayerwouldconsistofaWebserverofftheshelfandanewdynamicpagegenerationenginetobedeveloped,whichwould†Readdatasentbytheuser,throughtheHTTPprotocol†DothenecessaryprotocolconversionstoIMAP,LDAP,†CarryouttheactionencodedintheHTTPrequest,usingtheappropriateprotocolwiththebackendservers†FormattheresultasaWebpage,and†ReturntheresulttotheusersWebbrowserthroughtheWebserverOnewaytowritesuchaprogramthatgeneratesWebpagesdynamicallyistocodethelogic,andthenembedprintstatementsintheprogramthatwriteoutstaticHTMLcode,alongwithprintingotherstringvariablesthathavebeenpopulateddynamically.Abetterandmorepopularwayisusingtemplates.ThemiddlewarewestudiedusedatemplatebaseddesignforproducingdynamicWebpages.ThismethodinvolveswritingWebpagetemplateswhichhavestaticHTMLcodethatspecifythedesignoftheWebpage,interspersedwithscriptingtagsthatareinterpretedbyatemplateserverprogram.Thesetagsinstructthetemplateserverprogramontheactionthatistobetakene.g.populatingafieldwiththesubjectlineofamessageonreadingthetag.Thetemplateserverprogram,therefore,V.Apteetal./ComputerCommunications262003888–898889†Parsesthespecifictemplateaccessedbyauserrequest†Interpretsthetagsandcommunicateswiththebackendservers†PopulatesthefieldsthataretobydynamicallypopulatedTheresultisadynamicallygeneratedWebpage.ThearchitectureofsuchasystemisshowninFig.1.Giventheacceleratedtimetomarketgoalsandlimiteddevelopmenttime,thenaturalchoiceoftechnologyforthetemplateserverwastheoneperceivedtobepowerful,featurerichandyeteasytouseanddeploynamely,Javaservlets.Aninitialeffortwasdonetoquantifytheperformanceofthispagegenerationengine,toseewhetheritcouldmeettheexpectedperformancerequirements.Weconductedaseriesofstresstestsusingacommercialloaddrivertogeneraterepeatedrequeststotheservletengineatvariouslevelsofconcurrencysimulatedusers.ThetestconfigurationconsistedofaWindowsNTserverrunningtheloadgenerationscriptsdriver,aSolarisserverrunningthefrontendsoftware,andaSolarisserverrunningthebackendapplicationforthistest,aPOP3/IMAP4mailserverandanLDAPdirectoryserver.HardwareCPU,memory,disk,I/Oandsoftwareresourceconsumptionsweremeasuredonallmachines.Inaddition,endtoenduserperceivedresponsetimesweremeasured.Thedriverscriptsemulatedaprescribednumberofconcurrentusersrepeatedlygeneratingthesamerequeste.g.readmessage,sendmessage,etc..Thenumberofconcurrentsimulateduserswasvariedfrom1to20.Thenumberofrepeatedrequestsperuserateachconcurrencyleveltypically2000wassufficienttoachievestatisticalstability.Thetestswereruninstressmodethatis,assoonasauserreceivesaresponse,itimmediatelysubmitsthenextrequesti.e.withnegligibleclientdelay.EachoftheNsimulatedusersdoessoindependentlyandinparallel.Asaresult,theconcurrencyleveli.e.thenumberofrequestsinthesystemequalsNatalltimes.Theresultsofthestresstestsforaparticularrequesttypereada20KBmessageareshowninFigs.2and3.Inparticular,Fig.2plotstheendtoendresponsetimenormalizedonthelefthandaxis,andthefrontendCPUutilizationontherighthandaxis,asafunctionoftheconcurrencylevel.Ascanbeseen,theresponsetimecurvebeginstoridealongalinearasymptoteshownbythedottedlineafteronlysevenconcurrentusers.Thatis,responseFig.1.Templateserverarchitecture.Fig.2.Resultsofinitialstresstestsoftemplateserver,plottedvs.concurrentusers.V.Apteetal./ComputerCommunications262003888–898890timeincreasesproportionallywiththenumberofusers,indicatingsaturationinaclosedsystem6.Additionally,CPUutilizationlevelsoffafter11usersat65–70indicatinganonCPUsystembottleneck.Equivalently,Fig.3plotsendtoendresponsetimeasafunctionofthroughputrequests/s.Ascanbeseen,themaximumsystemthroughputpeaksatabout2requests/sec,andthendegradesunderoverloadtoabout11/2requests/s.Inotherwords,therewasactuallyadropincapacityof25aconcurrencypenalty,likelyduetocontextswitching,object/threadmanagement,garbagecollection,etc.Asizinganalysisbasedontheexpectedcustomergrowthandusagebehavior,togetherwiththeseinitialcapacityresults,suggestedthattheresultinghardwarecostswouldbeprohibitivelylarge.Itwasalsoclearthatthescalabilityofthisapplicationwaspoor.TheresourceconsumptionresultsdemonstratedthattheapplicationcouldnotmakefulluseoftheresourcesavailabletoitespeciallyCPU.Thefirstquestiontobeansweredwaswhetherornottheapplicationwasimplementedinthemostoptimalmanner.Theinitialphaseoftheperformanceenhancementeffortwasinthisdirection.SeveralkeyoptimizationswereperformedontheJavaservletcode,andseveralcriticalbottleneckswerediscoveredandresolvedintheendtoendarchitecturedescribedinaseparatepaper6.TheresultingimprovementinthereadrequestthroughputisshowninFig.4.Sizinganalysisontheimprovedandoptimizedcodeshowedthattheresourcerequirementswerestillquitesubstantial,andtheapplicationstillhitaprematurewallintermsofscalability.TheCPUcontinuedtoleveloff,nowatabout90.Asaconsequencetothisanalysis,anadditionaleffortwaslaunchedtoreassessthechoiceofthedynamictechnologyitself.Theplanwastoanalyzeapplicationsthathadthesamefunctionality,butwereimplementedindifferentlanguagesortechnologies,withinidenticalenvironments.Thetechnologieschosen,includingtheinitialversion,wereJavaservlets,JavaServerPagesJSP,CommonGatewayInterfaceCGIwithCþþprograms,andFastCGIwithCþþprograms.ThefollowingsectiongivesabriefintroductiontotheseWebprogrammingtechnologies.Fig.3.Equivalentloadtestresultsplottedvs.requests/s,fromstresstests.Fig.4.Resultsafteroptimization.V.Apteetal./ComputerCommunications262003888–898891

注意事项

本文(外文资料--Performance comparison of dynamic web platforms.pdf)为本站会员(淘宝运营)主动上传,人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知人人文库网([email protected]),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。

copyright@ 2015-2017 人人文库网网站版权所有
苏ICP备12009002号-5