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