高效云應(yīng)用性能管理(APM)妙招嘗鮮
在云上成功采用應(yīng)用性能管理(APM)涉及幾個(gè)關(guān)鍵的步驟:
設(shè)置資源邊界,限制性能變量;
對(duì)云情況應(yīng)用監(jiān)控實(shí)踐;
在直接資源不能解決體驗(yàn)質(zhì)量(QoE)問(wèn)題時(shí),部署補(bǔ)償措施。
首先介紹一下定義:APM是一種監(jiān)控流程,通過(guò)應(yīng)用業(yè)務(wù)用例,調(diào)整應(yīng)用資源滿足具體體驗(yàn)質(zhì)量標(biāo)準(zhǔn)集。技術(shù)上,QoE是應(yīng)用執(zhí)行時(shí)間和網(wǎng)絡(luò)交付時(shí)間的綜合,而且這些在云端都可以實(shí)現(xiàn)多樣化。
處理云性能變量
實(shí)際上,云計(jì)算最明顯的真相之一就是:當(dāng)潛在云資源池巨大且位于不同的地理位置時(shí),不同位置的資源池之間,網(wǎng)絡(luò)響應(yīng)時(shí)間必然有所區(qū)別。遠(yuǎn)一點(diǎn)的托管點(diǎn)通常要用更多的路由跳數(shù)到達(dá),會(huì)導(dǎo)致更多的延遲,但是你的用戶和云托管點(diǎn)之間的精準(zhǔn)跳數(shù)數(shù)量,在潛在云網(wǎng)絡(luò)提供商之間可能會(huì)存在明顯差異。
簡(jiǎn)單測(cè)試為例,用路由跟蹤診斷工具可以從每一個(gè)主要的員工位置到云端不同的點(diǎn),建立連接性能,有助于用最佳性能識(shí)別網(wǎng)絡(luò)提供商。
監(jiān)控性能 衡量響應(yīng)時(shí)間
一旦你做了所有能夠控制與應(yīng)用托管點(diǎn)云分布相關(guān)的應(yīng)用性能變量的事情之后,下一步就是為云重構(gòu)應(yīng)用監(jiān)
控實(shí)踐和工具。
通常,APM開(kāi)始從用戶層面衡量響應(yīng)時(shí)間,隨后穿過(guò)連接和功能連續(xù)層“回退到應(yīng)用”。APM工具可以應(yīng)用在用戶服務(wù)點(diǎn),也可以應(yīng)用在內(nèi)部應(yīng)用/組件本身,為數(shù)據(jù)中心所使用的云應(yīng)用部署相同的工具和實(shí)踐成為可能。
對(duì)于云APM唯一的要求就是:期望工具能夠同必須成為部署軟件鏡像一部分的應(yīng)用/組件共存,這樣意味著必須兼容云服務(wù)硬件和軟件平臺(tái)。
一些APM用戶會(huì)部署網(wǎng)絡(luò)探頭或者其他的網(wǎng)絡(luò)管理工具,在關(guān)鍵點(diǎn)檢測(cè)應(yīng)用包,隔離延遲資源并識(shí)別出問(wèn)題,一些顯然不能在公共云中做的事情。唯一現(xiàn)實(shí)的監(jiān)控策略就是檢測(cè)包只能在網(wǎng)絡(luò)邊界點(diǎn),意味著這個(gè)連接點(diǎn)連接到用戶以及應(yīng)用的組件。很可能APM工具已經(jīng)監(jiān)控用戶邊界,因此可能需要的就是整合網(wǎng)絡(luò)監(jiān)控和應(yīng)用鏡像,以便工具和應(yīng)用能夠部署到云端,且能夠訪問(wèn)。
云服務(wù)涉及到數(shù)個(gè)運(yùn)營(yíng)商提供的連接點(diǎn),邊界點(diǎn)監(jiān)控很難實(shí)現(xiàn),除非一個(gè)或者兩個(gè)運(yùn)營(yíng)商在連接時(shí)都提供一個(gè)監(jiān)控探頭式樣。還可能通過(guò)跟蹤路由發(fā)現(xiàn)問(wèn)題,但是僅僅在運(yùn)營(yíng)商暴露了自己的基礎(chǔ)架構(gòu)來(lái)控制所用協(xié)議時(shí)才可以。如果不是的話,后面的故障隔離和特定網(wǎng)絡(luò)補(bǔ)救(通過(guò)服務(wù)水平協(xié)議)就會(huì)很難。
隔離問(wèn)題源的目標(biāo)就是為了修復(fù)具體問(wèn)題導(dǎo)致的性能問(wèn)題——重選路由連接、改變托管地點(diǎn)等等。當(dāng)由于缺少資源控制,不能夠隔離問(wèn)題或者作出所需的改變,需要采取補(bǔ)償性能增強(qiáng)措施改善云APM。
加速云應(yīng)用性能
有效APM技術(shù)分成兩個(gè)主要的群組:網(wǎng)絡(luò)加速和針對(duì)負(fù)載共享的組件復(fù)制。在IT人員可能犯的錯(cuò)誤中最大的一個(gè)就是認(rèn)為前者可以用于網(wǎng)絡(luò)問(wèn)題,后者用于計(jì)算問(wèn)題。任何改善性能的都可以用于補(bǔ)償增強(qiáng)性能上,不管是否基于性能問(wèn)題,因?yàn)槟繕?biāo)就是為了補(bǔ)救問(wèn)題。
網(wǎng)絡(luò)性能增強(qiáng)通常涉及數(shù)據(jù)壓縮、多路徑傳輸和流量?jī)?yōu)先次序的結(jié)合。大約一半企業(yè)在其應(yīng)用中應(yīng)用某種形式的網(wǎng)絡(luò)性能,因此他們自然期望能夠?qū)⑾嗤墓ぞ哌w移到云端APM來(lái)使用。
問(wèn)題在于技術(shù)需要一對(duì)設(shè)備,一個(gè)在每一個(gè)網(wǎng)絡(luò)路徑的兩端,但是不可能在云端安置應(yīng)用的另一端。希望網(wǎng)絡(luò)性能工具可以操作服務(wù)器端軟件,而不是一個(gè)設(shè)備。但是要確保軟件同云的硬件和軟件兼容,因?yàn)楸仨殲椴渴鹫蠙C(jī)器鏡像。
應(yīng)用組件復(fù)制提供了額外的并行處理容量,能夠改善負(fù)載下的性能,但是這種機(jī)制只有在應(yīng)用負(fù)載導(dǎo)致的性能問(wèn)題時(shí)才能在云端應(yīng)用。如果你對(duì)這種情況表示懷疑,最好的選擇就是更高性能的服務(wù)器或者專用服務(wù)器。
然而,如果服務(wù)器性能不能解決問(wèn)題,而且的確和負(fù)載相關(guān),那就考慮復(fù)制。為了實(shí)現(xiàn)復(fù)制工作,應(yīng)用必須設(shè)計(jì)成能夠運(yùn)行一套并行實(shí)例那樣,通過(guò)負(fù)載均衡器分配工作。為了在云端應(yīng)用,負(fù)載均衡器可能必須是云托管的軟件組件。
大多數(shù)云性能問(wèn)題可以通過(guò)調(diào)諧云和網(wǎng)絡(luò)連接解決,遵從用于私有數(shù)據(jù)中心應(yīng)用托管的相同通用程序。風(fēng)險(xiǎn)在于這個(gè)程序需要在邊界之中保持QoE,會(huì)導(dǎo)致特定服務(wù)額外的云托管費(fèi)用,可能危害運(yùn)業(yè)務(wù)案例。