Cloud Acceleration Dan Sullivan The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
i Chaptei 1: Clouu Computing anu Challenges to Beliveiing Seivices ................................................ 1 Common Befinition of the Clouu .................................................................................................................. 1 Scalability ........................................................................................................................................................... 1 Self-Seivice ........................................................................................................................................................ 2 Pay-foi-Seivice Nouel .................................................................................................................................. 4 Biffeiences with Pie-Clouu Aichitectuies ........................................................................................... 4 Categoiizing Clouus ............................................................................................................................................ 6 Clouu Access Nouels ..................................................................................................................................... 6 Public Clouus ............................................................................................................................................... 6 Piivate Clouus ............................................................................................................................................. 7 Community Clouus: Pait Public, Pait Piivate ................................................................................ 8 Bybiiu Clouus .............................................................................................................................................. 8 Clouu Seivice Nouels .................................................................................................................................. 1u Infiastiuctuie as a Seivice ................................................................................................................... 1u Platfoim as a Seivice .............................................................................................................................. 11 Softwaie as a Seivice ............................................................................................................................. 12 Application Response Time anu Benefits of Clouu Acceleiation .................................................. 1S Auveise Effects of Slow Application Response Time .................................................................... 1S Impioving Application Response Time .............................................................................................. 14 Softwaie-baseu 0ptions ....................................................................................................................... 14 Baiuwaie 0ptions ................................................................................................................................... 14 Netwoik Issues anu Clouu Acceleiation ........................................................................................ 1S Challenges to Clouu Acceleiation ............................................................................................................... 1S Scalability anu ueogiaphic Reach ......................................................................................................... 1S Reuunuancy .................................................................................................................................................... 16 Key Consiueiations foi Beploying Clouu Applications ..................................................................... 17 Summaiy ............................................................................................................................................................... 19
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
ii Copyright Statement 2013 Realtime Publishers. All rights reserved. This site contains materials that have been created, developed, or commissioned by, and published with the permission of, Realtime Publishers (the Materials) and this site and any such Materials are protected by international copyright and trademark laws. THE MATERIALS ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. The Materials are subject to change without notice and do not represent a commitment on the part of Realtime Publishers its web site sponsors. In no event shall Realtime Publishers or its web site sponsors be held liable for technical or editorial errors or omissions contained in the Materials, including without limitation, for any direct, indirect, incidental, special, exemplary or consequential damages whatsoever resulting from the use of any information contained in the Materials. The Materials (including but not limited to the text, images, audio, and/or video) may not be copied, reproduced, republished, uploaded, posted, transmitted, or distributed in any way, in whole or in part, except that one copy may be downloaded for your personal, non- commercial use on a single computer. In connection with such use, you may not modify or obscure any copyright or other proprietary notice. The Materials may contain trademarks, services marks and logos that are the property of third parties. You are not permitted to use these trademarks, services marks or logos without prior written consent of such third parties. Realtime Publishers and the Realtime Publishers logo are registered in the US Patent & Trademark Office. All other product or service names are the property of their respective owners. If you have any questions about these terms, or if you would like information about licensing materials from Realtime Publishers, please contact us via e-mail at info@realtimepublishers.com. The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
1 !"#$%&' )* !"#$% !#'($)*+, -+% !"#$$%&'%( *+ ,%$-.%/-&' 0%/.-1%( Clouu computing is an incieasingly populai way to use computing anu stoiage technologies, anu it is changing the way businesses uelivei seivices. As with any innovation, you have to auapt youi methous anu pioceuuies to take full auvantage of the new technology. This guiue examines how clouu computing anu the aichitectuie of the Inteinet shape seivice ueliveiy, the challenges piesenteu to ieaching a global customei base, anu techniques foi acceleiating content ueliveiy. This chaptei begins with an oveiview of clouu computing as well as key consiueiations foi ueliveiing seivices thiough the clouu. !"##"$ &'()$)*)"$ "( *+' !,"-. Clouu computing is a mouel of ueliveiing computing, stoiage, netwoik anuoi infiastiuctuie in a shaieu mannei that allows foi on-uemanu scalability, self-seivice, anu typically a pay-foi-seivice piicing mouel. /01,12),)*3 Scalability implies the ability to shift the amount of computing anu stoiage as neeueu to meet cuiient neeus. Foi example, if a business expeiiences a spike in uemanu foi one of its Web applications, the business might neeu to biing auuitional seiveis online to iesponu to all iequests in an acceptable time. In a clouu, these auuitional seiveis aie alieauy physically piesent in a uata centei. A clouu opeiating system (0S) is typically in place to ueploy viitual images to auuitional seiveis anu ieconfiguie loau balanceis, if iequiieu, to incluue the auuitional seiveis in an application clustei (see Figuie 1.1). The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
2
!"#$%& ()(* +,-$./ 0%-1".& 2-% %30". /43,35","67) Scalability implies the ability to iapiuly uownsize iesouices as well. In the given example, when the spike in tiaffic subsiues, some of the seiveis woulu be ieleaseu fiom the clustei anu ietuineu to the pool of clouu iesouices foi othei applications oi customeis to use as neeueu. Stoiage seivices aie tieateu in an analogous way in clouu computing. As moie stoiage is iequiieu, it is allocateu fiom a shaieu pool of stoiage iesouices. When it is no longei neeueu, stoiage is ietuineu to the pool foi otheis to use. /',(4/'56)0' Piioi to the auvent of clouu computing, when an application auministiatoi neeueu to scale computeis to an application clustei oi upgiaue a seivei, it meant submitting iequests to systems auministiatois anu possibly piovisioning auuitional haiuwaie. Clouu computing platfoims pioviue enu useis with the ability to piovision seiveis anu stoiage as neeueu thiough a clouu auministiation inteiface (see Figuie 1.2). Typically, these inteifaces allow useis to specify: The size of viitual machines to ueploy The numbei of viitual machines The location of the uata centei to ueploy the viitual machines The viitual image to ueploy to each seivei
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
S As clouus aie viitualizeu computing iesouices, clouu pioviueis can offei a wiue iange of machine configuiations. Foi example, a small seivei might incluue 1 coie, 2uB of memoiy, anu 2uuuB of local stoiage, while a highei-enu seivei might incluue 8 coies, S2uB of memoiy, anu 1TB of local stoiage. Clouu useis can choose the optimal configuiation baseu on costs anu iequiiements. CP0 anu memoiy-intensive applications might iequiie a laige anu moie costly seivei, while anothei application coulu be moie cost effectively iun on a numbei of low CP0low memoiy viitual machines. Clouu pioviueis also maintain a catalog of viitual images. These can incluue a vaiiety of 0Ss anu pieconfiguieu applications. If business analysts fiequently woik with a set of au hoc iepoiting, statistical analysis, anu visualization tools, the clouu pioviuei can ueploy a viitual image with these applications installeu anu configuieu so that they aie ieauily available when neeueu.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
4 7134("54/'56)0' 8".', Anothei uistinguishing featuie of clouu computing is the pay-foi-seivice mouel. Insteau of buying ueuicateu haiuwaie foi an application, application manageis now have the option of essentially ienting iesouices when those iesouices aie neeueu, anu paying foi only what is useu. Seiveis aie typically billeu in houi oi minute time inciements. The pei-unit-of-time chaige will vaiy with the viitual machine configuiation anu can iange fiom pennies to uollais pei houi pei machine. Stoiage is usually chaigeu baseu on the amount of stoiage useu anu the length of time uata is stoieu. &)(('5'$0'9 :)*+ 75'4!,"-. ;50+)*'0*-5'9 In many ways, clouu computing is not a new technology but iathei a new way of using existing technologies. The builuing blocks of clouuscommouity haiuwaie, viitualization platfoims, wiuely useu 0Ss anu applications, anu netwoiking infiastiuctuieweie all in use piioi to the uevelopment of clouu computing. In spite of the similai components, theie aie significant uiffeiences between clouu computing aichitectuies anu pie-clouu aichitectuies. Pie-clouu aichitectuies often suffeieu fiom unuei utilization. Systems uesigneis woulu unueistanuably configuie seiveis foi peak capacity so that applications woulu iemain iesponsive unuei heavy but expecteu loaus. In othei cases, applications woulu be ueployeu to ueuicateu seiveis to keep them isolateu fiom othei applications anu allow foi 0S configuiation specifically tuneu foi that one application. A uisauvantage of these appioaches was that the business was paying foi computing capacity it often uiu not use. Seivei viitualization helpeu to ieuuce unueiutilization while maintaining 0S isolation, see Figuie 1.S; howevei, viitualization was manageu by systems auministiatois, unlike the self-seivice appioach of clouu computing. Piioi to the clouu, theie was less shaiing of computing iesouices. Baiuwaie is often puichaseu foi a specific pioject oi uepaitment, so it tenus to be ueuicateu to that neeu. Theie aie few incentives to shaie the iesouice oi the cost of maintaining it. Clouu computing platfoims tiack utilization anu allow businesses to chaige back to useis foi the iesouices they use. Baving a chaige-back system is less a technical auvance than an oiganizational one. Now businesses can easily account foi anu bill foi shaieu iesouices. The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
S
!"#$%& ()A* B%"-% 6- 1"%6$3,"C36"-<D "6 ;3/ 4-@@-< 0%346"4& 6- .&."436& 3 0?7/"43, /&%1&% 6- 3 /"<#,& 300,"436"-< -% 63/E) F"%6$3,"C36"-< 3,,-;/ 2-% @$,6"0,& 300,"436"-</ 6- %$< -< 3 /"<#,& /&%1&% ;?",& /6",, @3"<63"<"<# G9 "/-,36"-<) As pieviously mentioneu, common chaiacteiistics of clouu computing incluue scalability, self-seivice auministiation, anu pay-foi-seivice chaiges. This combination of featuies has enableu moie efficient use of computing anu stoiage seivices anu unueilies moie innovative use of computing iesouices. Staiting with these thiee essential chaiacteiistics of clouu computing, thiee uistinct ueployment mouels have emeigeu.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
6 !1*'<"5)=)$< !,"-.9 Clouu computing seivices can be categoiizeu accoiuing to who is gianteu access to the clouu anu by the types of seivices offeieu by the clouu. !,"-. ;00'99 8".',9 Clouus can be categoiizeu accoiuing to who is gianteu access. Thiee typical access mouels aie: Public clouu Piivate clouu Bybiiu clouu Each of these ueployment mouels has its benefits anu uiawbacks. 7-2,)0 !,"-.9 Public clouus aie essentially open to any usei. Nany clouu pioviueis aie well known in the IT inuustiy anu incluue Amazon, Niciosoft, uoogle, IBN, BP, anu Rackspace. 0ne of the auvantages of a public clouu is the low baiiiei to entiy: viitually anyone with a cieuit caiu can set up an account anu piovision iesouices. Also, public clouu pioviueis have the auvantage of specializing in clouu seivices offeiings. They iealize economies of scale, can invest in specialists to uesign anu maintain theii infiastiuctuie, anu can iaise the capital iequiieu to ueploy substantial clouu seivices. Common chaiacteiistics of public clouu pioviueis incluue: Naintain multiple uata centeis Bave ieuunuant netwoiks Bave sufficient compute anu stoiage iesouices to meet uemanu Pioviue stanuaiu seivice level agieements (SLAs) Public clouu pioviueis uistinguish themselves moie on specializeu seivices than on piice. Foi example, a clouu pioviuei might offei a high-peifoimance computing clustei uesigneu with high-speeu netwoik inteiconnects foi low latency anu flash uiives foi impioveu I0 peifoimance. In othei cases, a pioviuei might offei a low-cost stoiage seivice foi aichiving, piivate netwoiks foi auueu secuiity, oi accounting anu billing seivices tailoieu to enteipiise customeis. Although public clouus may offei a combination of commouity anu specializeu seivices, they uo not always meet the neeus of enteipiise customeis. Foi example, some public clouu offeiings might not meet the iequiiements of inuustiy iegulations such as the Payment Caiu Inuustiy Bata Secuiity Stanuaiu (PCI BSS). Retailei businesses anu otheis using payment caius woulu not be able to iun applications oi stoie uata subject to PCI BSS in those clouus anu still iemain in compliance.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
7 Some businesses may not allow confiuential oi sensitive uata to iesiue on seiveis oi stoiage systems outsiue of coipoiate contiol uue to conceins about uata leaks anu loss of confiuentiality. Bowevei, uata can be ieauily enciypteu befoie it leaves coipoiate contiol. Bepenuing on juiisuiction, businesses may be iequiieu to keep confiuential anu piivate infoimation within the juiisuiction oi within a paitnei juiisuiction with equivalent piivacy piotections. Although the benefits of public clouu computing aie well unueistoou, foi some business cases, a piivate clouu may be a moie appealing option. 75)61*' !,"-.9 Piivate clouus aie contiolleu by oiganizations behinu theii fiiewalls anu limit access to the clouu to oiganization membeis oi paitneis. Laige businesses anu goveinments can have the neeu foi anu iesouices to builu anu maintain piivate clouus. Foitunately, businesses uo not neeu to stait fiom sciatch to builu a piivate clouu; IT venuois offei clouu computing packages that incluue the haiuwaie anu softwaie iequiieu foi a piivate clouu. The single most significant benefit of a piivate clouu is that the oiganization ueploying it maintains full contiol: Beteimining who has access to clouu iesouices Befining policies anu pioceuuies foi allocating clouu iesouices Specifying chaige-backs foi seivices Implementing specializeu softwaie seivices, foi example, a message queue, oi haiuwaie, such as flash stoiage uevices Implementing monitoiing anu auuiting pioceuuies accoiuing to the oiganization's paiticulai neeus The obvious uiawbacks of piivate clouus aie the capital expenuituie to acquiie the infiastiuctuie anu the ongoing costs of maintaining a piivate clouu. If iesiliency is iequiieu foi youi business' clouu applications, you will piobably neeu to maintain multiple uata centeis. 0ne option foi piivate clouus is to locate youi infiastiuctuie in a thiiu-paity uata centei. This option affoius some economies of scale anu specialization of laboi with iegaius to managing the physical infiastiuctuie anu ieuunuant netwoik seivices. The business still ietains contiol ovei the computing anu stoiage infiastiuctuie, so many of the benefits of an on-piemise piivate clouu iemain in place.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
8 !"##-$)*3 !,"-.9> 715* 7-2,)0? 715* 75)61*' The commonly useu public-piivate uichotomy uoes not covei all options with iegaius to clouu access mouels. The community clouu, sometimes iefeiieu to as a gateu community mouel, has chaiacteiistics of both piivate anu public clouus. Community clouu pioviueis scieen potential customeis befoie gianting them access to clouus. This setup is uesigneu to ensuie that only legitimate oiganizations that meet the venuoi's ciiteiia can make use of the community clouu. Foi example, a community clouu pioviuei specializing in healthcaie might accept only healthcaie pioviuei anu insuieis as customeis. This mouel allows the venuoi to specialize seivices to theii taiget maiket, such as pioviuing moie in-uepth auuiting infoimation to meet Bealth Insuiance Poitability anu Accountability Act (BIPAA) compliance iegulations. @325). !,"-.9 A hybiiu clouu, as the name implies, is a combination of piivate anu public clouus. The mouel was uevelopeu by the uesiie foi the benefits of both piivate anu public clouus. In a hybiiu clouu, jobs anu uata that neeu to stay within the coipoiate netwoik can iun on the piivate clouu while othei jobs anu uata can be shifteu to a public clouu pioviuei, as Figuie 1.4 shows. This appioach can ieuuce the uemanu foi piivate clouu iesouices anu theiefoie ieuuce the capital expenuituie neeueu to establish a piivate clouu. Naintaining a hybiiu clouu intiouuces challenges not encounteieu with the othei mouels. If the clouu 0Ss iunning in the piivate anu public clouus aie not compatible, you might finu youiself maintaining two catalogs of viitual images as well as two access contiol systems. Accounting anu billing might also iequiie uiffeient systems anu cieate auuitional woik to integiate. 0sing the same clouu 0Sfoi example, 0penStackin both the public anu piivate clouus can ieuuce integiation challenges. Compatible clouu 0Ss, such as the Amazon AWS platfoim anu Eucalyptus, aie not the same but use common APIs that can ieuuce the challenges to implementing a hybiiu clouu. The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
9
!"#$%& ()H* I75%". 4,-$./ 4-@5"<& 0%"136& 3<. 0$5,"4 4,-$./ 3<. 3,,-; 2-% ;-%E,-3./ 6- @-1& 5&6;&&< 6?& 6;-) Public, piivate, anu hybiiu clouus can all be useu to ueploy seivices foi the benefit of customeis, paitneis, anu employees. The choice of the most appiopiiate access mouel will vaiy accoiuing to secuiity, compliance, peifoimance, anu cost constiaints. In auuition to categoiizing clouus by access mouel, it is common to uistinguish public clouus by the types of seivices offeieu.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
1u !,"-. /'56)0' 8".',9 Clouus aie often gioupeu into one of thiee seivice categoiies: Infiastiuctuie as a Seivice (IaaS) Platfoim as a Seivice (PaaS) Softwaie as a Seivice (SaaS) These categoiies offei incieasing levels of specialization anu ieuuceu levels of management oveiheau. A$(519*5-0*-5' 19 1 /'56)0' IaaS clouus offei access to viitual seiveis, stoiage, anu ielateu seivices. Clouu useis piovision viitual seiveis anu stoiage as neeueu, anu manage all aspects of the infiastiuctuie at the 0S level anu above (see Figuie 1.S). This option gives useis substantial contiol ovei the size of viitual seiveis useu, the softwaie installeu, anu the way stoiage systems aie utilizeu. This mouel also imposes the most iesponsibility on the clouu useis. Foi example, softwaie engineeis using a public clouu foi uevelopment woulu neeu to select an appiopiiate-size machine, loau a viitual image with an appiopiiate 0S, install auuitional tools if neeueu, anu configuie peisistent stoiage. IaaS solutions aie goou choices when you neeu to maximize contiol ovei the 0S, applications, anu stoiage options. Alteinatively, if you neeu less contiol ovei the infiastiuctuie, a PaaS clouu may be a suitable option.
!"#$%& ()J* =<2%3/6%$46$%& 3/ 3 9&%1"4& 0%-1".&/ 0%"@3%",7 4-@0$6"<#D /6-%3#&D 3<. <&6;-%E"<# /&%1"4&/) The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
11 7,1*("5# 19 1 /'56)0' PaaS clouus pioviue access to application seivices while alleviating the neeu foi uevice management (see Figuie 1.6). Foi example, a uevelopei might use a PaaS clouu to iun a laige numbei of tests on a new softwaie. The uevelopei can choose the appiopiiate numbei of pieconfiguieu seiveis anu submit the job without neeuing to set up the seiveis themselves. PaaS can also ieuuce the time iequiieu to set up anu manage application stacks. Insteau of setting up application anu uatabase seiveis, PaaS useis can use the application anu uata management platfoims pioviueu by the PaaS clouu. uoogle App Engine, foi example, allows softwaie uevelopeis to iun theii }ava oi Python applications on uoogle infiastiuctuie without the neeu to manage viitual machines. Niciosoft Winuows Azuie clouu incluues a ielational uatabase seivice, Azuie SQL, which a business can use insteau of managing its own Niciosoft SQL Seivei instance. The lines between IaaS anu PaaS aie sometimes bluiieu, as IaaS pioviueis offei seivices, such as uatabases anu messaging seivices, as pait of theii IaaS seivices.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
12 /"(*:15' 19 1 /'56)0' The thiiu categoiy of clouu seivice type, SaaS, pioviues fully functional applications to enu useis. Applications as uiffeient as woiu piocessing anu customei ielationship management (CRN) aie available fiom SaaS pioviueis. A key auvantage of the SaaS mouel is that useis uo not have to manage any pait of the infiastiuctuie. Some applications will iequiie enu useis to configuie access contiols anu piogiam options anu othei application settings, but the SaaS pioviuei manages all aspects of the computing, stoiage, anu netwoik infiastiuctuie, as Figuie 1.7 illustiates.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
1S SaaS has cieateu oppoitunities foi both SaaS consumeis anu SaaS pioviueis. 0seis of SaaS seivices can ieuuce oi eliminate the neeu to maintain specializeu applications in-house oi in a clouu. Foi example, an aichitectuie fiim using a SaaS foi managing its financials can avoiu having to iun a financials package in-house anu may be able to ieuuce the numbei of staff ueuicateu to suppoiting the financial package. SaaS pioviueis have oppoitunities to cieate seivices that might not be efficiently implementeu within a single oiganization. Foi example, a SaaS that pioviues BIPAA-compliant iecoius management seivices coulu finu a laige maiket of small anu miusize healthcaie pioviueis inteiesteu in theii seivices. SaaS pioviueis may implement theii applications in public, piivate, oi hybiiu clouus. ;BB,)01*)"$ C'9B"$9' D)#' 1$. E'$'()*9 "( !,"-. ;00','51*)"$ Clouu computing anu the global ieach of the Inteinet has cieateu oppoitunities foi businesses to expanu theii maikets anu customei base. The scalability anu elasticity of clouu computing allows businesses to giow theii computing systems accoiuing to theii business uemanu. This flexibility lessens the neeu to make capital expenuituies foi haiuwaie that might be neeueu in the futuie. It also allows opeiatois to make uecisions about piovisioning compute anu stoiage seivices at a much moie fine-giaineu level. If theie is a peak uemanu foi a uay oi two, then auuitional seiveis can be piovisioneu in the clouu. When uemanu then subsiues, those seiveis can be ieleaseu. Compute anu stoiage elasticity aie essential paits of maintaining quality of seivice. They aie not, howevei, the only factois. ;.6'59' F(('0*9 "( /,": ;BB,)01*)"$ C'9B"$9' D)#' Fiom a customei's peispective, the quality of an application is ueteimineu in pait by its iesponsiveness. Applications that appeai to iun slowly aie pioblematic fiom a usei's peispective anu can leau to usei uissatisfaction anu lost ievenue. A numbei of stuuies have uemonstiateu a coiielation between application iesponse time anu uiscontinueu use of a Web-baseu application. Accoiuing to a stuuy by the Abeiueen uioup, a 1-seconu uelay in page loau times can iesult in: 11% fewei page views 16% ueciease in customei satisfaction 7% loss in conveisions Anothei set of finuings publisheu by KissNetiics ieveals that: 7S% of mobile uevice useis iepoit encounteiing Web sites that weie slow to loau 47% of consumeis expect Web pages to loau in 2 seconus oi less 4u% abanuon sites that take moie than S seconus to loau 79% of shoppeis who aie uissatisfieu with the site's peifoimance aie less likely to buy fiom that site again Cleaily, the iesponsiveness of an application can have a uiiect impact on customei satisfaction, loyalty, anu ultimately ievenue. The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
14 A#B5"6)$< ;BB,)01*)"$ C'9B"$9' D)#' Nany factois contiibute to application iesponsiveness, such as the way the application coue is wiitten, the way the uatabase has been uesigneu, anu netwoik thioughput anu latency. /"(*:15'4219'. GB*)"$9 0ne way to impiove peifoimance is to tune application coue. This task can incluue: Selecting moie efficient algoiithms Analyzing coue to iuentify time-consuming functions Re-wiiting uatabase queiies to ieuuce the amount of uata ietuineu Tuning uatabase uesign by implementing auuitional inuexes anu othei measuies to ieuuce I0 opeiations peifoimeu by the uatabase Impioving softwaie can yielu significant impiovements in some cases, but these impiovements can be costly anu may iequiie moie time than othei options to implement. @15.:15' GB*)"$9 The clouu also allows businesses to implement a well-known but sometimes questionable piactice of "thiowing moie haiuwaie at the pioblem." Rathei than ieview anu ievise coue, it might be fastei to simply scale up the seiveis that aie iunning the coue. 0ne coulu scale veitically by ueploying the application to a seivei with moie coies anu memoiy anu fastei stoiage uevices. Alteinatively, applications that lenu themselves to uistiibuteu woikloaus can scale hoiizontally. This action entails auuing auuitional seiveis to a loau-balanceu clustei anu allowing the loau balancei to uistiibute the woik among moie seiveis. Both of these scenaiios can help impiove peifoimance, assuming theie aie no bottlenecks outsiue the seiveis (foi example, the time iequiieu to peifoim I0 opeiations on a stoiage aiiay). If I0 peifoimance is a pioblem, you might be able to impiove peifoimance by switching to fastei stoiage technology.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
1S H'*:"5I A99-'9 1$. !,"-. ;00','51*)"$ Although tuning application coue anu uatabase uesign can often impiove the thioughput of seiveis, they uo not always impiove application iesponse time. Netwoik latency, oi the time uelay in senuing uata between two netwoikeu uevices, cannot be impioveu by tweaking algoiithms on the seivei oi optimizing uatabase queiies. Within a uata centei, clouu pioviueis may offei highei peifoimance netwoiking infiastiuctuie foi specializeu tasks, such as high-peifoimance computing. These specializeu jobs may iun on clusteis with 1uub Etheinet while most common jobs iun on seiveis inteiconnecteu with slowei, inteifaces. Foi uata that is sent outsiue the uata centei anu ovei the Inteinet, auuitional measuies aie iequiieu to ieuuce latency. +,-$. N44&,&%36"-< In this guiue, the teim !"#$% '!!("()'*+#, iefeis to clouu techniques foi impioving the oveiall iesponsiveness of an application by ieuucing the time it takes to uelivei content to an enu usei. Without going too ueeply into technical uetails in this chaptei, it is woith noting that clouu acceleiation can be implementeu with a combination of content ueliveiy netwoiks foi uistiibuting content aiounu the globe anu ieuuceu netwoik tiaffic using specializeu optimization. !+1,,'$<'9 *" !,"-. ;00','51*)"$ The iemainuei of this guiue will uelve into the technical uetails of clouu acceleiation techniques; foi now, this chaptei will biiefly examine foui challenges to implementing clouu acceleiation: Scalability anu geogiaphic ieach Reuunuancy Consoliuation of seivices Cost Each of these challenges must be auuiesseu to successfully implement a clouu acceleiation solution. /01,12),)*3 1$. J'"<51B+)0 C'10+ Netwoiking is constiaineu by physics as well as engineeiing. We will nevei tweak the laws of physics to impiove the speeu with which we can tiansmit signals. Although an oiganization can impiove the engineeiing of its netwoiking haiuwaie, the business is still uepenuent on the infiastiuctuie useu by Inteinet seivice pioviueis (ISPs) aiounu the globe.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
16 Content ueliveiy netwoiks (CBNs) compensate foi netwoik limitations by maintaining copies of uata aiounu the globe anu iesponuing to usei iequests foi content by using the closest facility to the enu usei anu pioviuing the best path between enupoints. A customei in Amsteiuam, foi example, might be seiveu fiom content stoieu in a uata centei in Paiis, while a customei in Shanghai ieceives the same content fiom a uata centei in Singapoie (see Figuie 1.8).
!"#$%& ()O* P,-53, .363 4&<6&%/ 3%& &//&<6"3, 2-% #&-#%30?"43,,7 ."/6%"5$6"<# %&0,"436&. 4-<6&<6) Businesses can ueploy anu maintain theii own uata centeis oi infiastiuctuie within co- location facilities aiounu the globe. Such a ueployment woulu have to have sufficient global ieach to iesponu to customeis, employees, anu business paitneis wheievei they may be. These ueployments woulu also have to incluue sufficient haiuwaie to scale to meet the peak uemanus each uata centei woulu encountei. C'.-$.1$03 Reuunuancy is anothei consiueiation. Baiuwaie fails. Softwaie ciashes. Netwoiks lose connectivity. If a uata centei weie to fail, othei uata centeis aiounu the globe shoulu be configuieu to iesponu to tiaffic noimally hanuleu by the faileu site. Reuunuancy also entails maintaining up-to-uate copies of content. Replication pioceuuies shoulu be in place to ensuie that content is uistiibuteu to all uata sites in a timely mannei.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
17 !"$9",).1*)"$ "( /'56)0'9 1$. !"9*9 If a business is going to all the effoit anu cost to ueploy clouu acceleiation systems, it is best to capitalize on that investment by consoliuating seivices anu applications that can benefit. As with piivate clouus, theie is the potential foi significant capital investment to establish anu maintain clouu acceleiation infiastiuctuie. 0ngoing maintenance costs will auu to the oveiall opeiational expenses of the oiganization as well. Q&2&%&<4& Latei chapteis will examine options foi auuiessing these challenges. K'3 !"$9).'51*)"$9 ("5 &'B,"3)$< !,"-. ;BB,)01*)"$9 Along with the technical challenges to implementing clouu acceleiation technologies, it is impoitant to consiuei othei chaiacteiistics that influence how a business can impiove application iesponsiveness. 0ne factoi that ueteimines the optimal clouu acceleiation technique is the use of geneiateu veisus ieusable content. Reusable content, sometimes iefeiieu to as static content, can be ieplicateu anu sent fiom Web seiveis without auuitional piocessing by an application. Reusable content incluues mateiial such as infoimation fiom piouuct catalogs, uocuments, anu geneial infoimation Web site pages. ueneiateu content is the iesult of some application piocess, such as queiying a uatabase to ietiieve a customei's oiuei histoiy. Reusable content can be ieplicateu to uata centeis aiounu the globe; uynamically geneiateu content cannot. Insteau, uynamically geneiateu content can benefit fiom optimization techniques that impiove thioughput anu latency between uata centeis. 0thei factois one must contenu with when pioviuing seivices on a laige geogiaphic scale aie a function of the uesign of the Inteinet. Foi example, the Inteinet is compiiseu of multiple ISPs woiking togethei to ioute uata as neeueu acioss uiffeient ISPs' netwoiks. Congestion at the physical inteiconnection of netwoiks can auveisely impact application peifoimance (see Figuie 1.9). This anu othei issues that ueiive fiom the laige-scale aichitectuie of the Inteinet uiives the neeu foi multiple uata centeis in geogiaphically uispeiseu aiiangements. The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
18
!"#$%& ()R* >?& %36& -2 .363 &L4?3<#& 5&6;&&< =9B/ ;",, .&0&<. -< @$,6"0,& 2346-%/D "<4,$."<# 6?& 6-0-,-#7 -2 6?& <&6;-%E) +-<#&/6"-< 36 6?& ,"<E/ 5&6;&&< =9B/ 43< 4-<6%"5$6& 6- ?"#? ,36&<47 "< #,-53, S&5 300,"436"-</) In auuition to uiffeiences in infiastiuctuie, ISPs may have uiffeient business peispectives on linking with othei ISPs. In the most basic scenaiio, ISPs view theii ielationships as iecipiocal anu pass tiaffic between ISPs without compensation. In othei cases, one ISP may believe anothei ISP gains moie fiom a peeiing ielationship anu theiefoie iequiies payment to accept tiaffic fiom anu senu tiaffic to the othei ISP. Competition between ISPs can limit uata exchange as well. Both technical anu business consiueiations can affect the flow of youi application tiaffic aiounu the globe. Although most businesses cannot uiiectly influence theii ISP's business mouel anu ielationships with othei ISPs, businesses can woik aiounu the limitations imposeu by peeiing aiiangements by using clouu acceleiation techniques. Clouu pioviueis can also be a potential netwoik bottlenecks. If theii netwoiking seivices aie insufficient foi an oiganization's neeus anu the pioviuei's uistiibution of uata centeis is not enough to compensate foi netwoik congestion anu latency issues, alteinative clouu acceleiation options may be iequiieu.
The Befinitive uuiue to Clouu Acceleiation Ban Sullivan
19 /-##153 Clouu computing is cieating oppoitunities foi businesses to expanu theii ieach to a global scale. The cost anu complexity of ueploying computing anu stoiage seivices is loweieu with clouu computing. Theie is also gieatei flexibility to auapt to new business oppoitunities by leveiaging IaaS anu PaaS platfoims to cieate new applications anu seivices. The incieasing auoption of SaaS platfoims also piesents an oppoitunity foi businesses to offei theii seivices in a SaaS mouel. Businesses must pay paiticulai attention to Web application peifoimance foi all customeis iegaiuless of those customeis' locations. Auuing seiveis anu stoiage will impiove some but not all aspects of application iesponsiveness. Clouu acceleiation techniques may be iequiieu to ensuie consistent anu acceptable levels of peifoimance foi all application useis.