向公有云轉(zhuǎn)型就跟遷移移動應(yīng)用和支付每月賬單一樣簡單。然而,你的開支是否超出應(yīng)有的費用?想不想節(jié)省資金、提升性能?下面這五項公有云應(yīng)用程序優(yōu)化技術(shù)將幫助你節(jié)省費用,另外還能提升性能。
向公有云轉(zhuǎn)型就跟遷移移動應(yīng)用和支付每月賬單一樣簡單。然而,你的開支是否超出應(yīng)有的費用?下面這五項公有云應(yīng)用程序優(yōu)化技術(shù)將幫助你節(jié)省費用,另外還能提升性能。
1. 重構(gòu)代碼,以應(yīng)對云服務(wù)提供商的計費模式
亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)不僅僅針對使用的計算、存儲和網(wǎng)絡(luò)帶寬向用戶收費――每當你訪問你的存儲資源以便讀取或?qū)懭霐?shù)據(jù)時,它也收費。因而,只要有可能,你可能想集合應(yīng)用程序的讀取和寫入,并將它們歸入單一操作。那樣一來,一旦你花錢購置了自己的服務(wù)器,每當進行讀取或?qū)懭氩僮?,就不會產(chǎn)生額外的費用。
這項云優(yōu)化技術(shù)的整體效果取決于你簽約使用的那家公有云服務(wù)提供商(CSP)的定價方法。無論你與哪家CSP簽約,重構(gòu)代碼都可以視作是提升應(yīng)用程序性能的機會。
2. 優(yōu)化已選擇的默認云實例
使用EC2構(gòu)建實例時,你可以在不同層次的計算、內(nèi)存和存儲等資源之間進行選擇。此外,EC2提供了競價型實例(Spot Instance),這種實例是指隨時可供使用的額外容量,以低于普通實例的價格來提供。
有必要花點時間試一下你的應(yīng)用程序,以便確定你所需要的計算、內(nèi)存和存儲等資源的最佳數(shù)量。這將幫助你確保沒有在容量或配置上開支過度,它會幫助弄清楚要不要考慮使用競價型實例(或者另一家CSP提供的同等服務(wù))。
3. 兼顧所需的服務(wù)級別和默認的云實例
每個應(yīng)用程序都有各自的服務(wù)級別配置文件――也就是它的一般用途和功能。比如說,你那個面向客戶的電子商務(wù)網(wǎng)站其服務(wù)級別就不同于內(nèi)部員工門戶網(wǎng)站。對照各種應(yīng)用程序所需的服務(wù)級別評估公有云實例的成本,可能會幫助你優(yōu)化公有云成本。
不妨回顧發(fā)生過的Netflix停運事件??紤]到視頻流服務(wù)具有的性質(zhì),鑒于Netflix具有存儲和帶寬密集型的特性,強行啟動亞馬遜建在另外地方的另一個數(shù)據(jù)中心可能行不通。然而,必要的話,可以優(yōu)化不大密集、較為重要的關(guān)鍵任務(wù)型服務(wù),以便由替代的數(shù)據(jù)中心來提供服務(wù),因而讓Netflix可以不受此類停運事件的影響。
4. 微調(diào)自動擴展規(guī)則
有些應(yīng)用程序可自動擴展(增加和減少)服務(wù)器實例的數(shù)量,它們?yōu)閮?yōu)化提供了大好機會。比如說,你可能有一條自動擴展規(guī)則:一旦處理器的使用率在所有當前實例上達到80%,就創(chuàng)建一個新的實例;還有另一條自動擴展規(guī)則:一旦處理器的平均使用率達到40%,就創(chuàng)建新的實例。
你如何知道80%和40%是正確的數(shù)字?為何不是85%和35%?如果采用后一個規(guī)則,你就可以創(chuàng)建較少的實例,并降低成本。
此外,各應(yīng)用程序?qū)τ嬎恪⒋鎯蛶挼荣Y源的需求都不一樣。因此,你的規(guī)則需要基于以上三個因素的復雜組合,而不是僅僅基于處理器的使用率。你可能需要試一下對你的公有云應(yīng)用程序和所需的服務(wù)級別而言看似合乎邏輯的組合。然后,你可以在一段時間內(nèi)優(yōu)化這些百分比。
5. 數(shù)據(jù)庫行優(yōu)化
Netflix之類的應(yīng)用程序具有局部性,這意味著大多數(shù)時候,客戶只能訪問屬于他們的數(shù)據(jù)。Netflix使用AWS的地區(qū)(Region)和區(qū)域(Zone)來托管運行服務(wù)器,為住在那些數(shù)據(jù)中心附近的客戶提供服務(wù)。
這之所以能成為現(xiàn)實,多虧了數(shù)據(jù)庫分片技術(shù)。該技術(shù)讓你可以對數(shù)據(jù)庫中的行進行分區(qū),將不同的分區(qū)存儲在位于不同數(shù)據(jù)中心的數(shù)據(jù)庫內(nèi)。這項技術(shù)還適用于信用卡處理之類的應(yīng)用,因為分片技術(shù)適用于局部的使用模式,比如查詢某個持卡人的交易或與某個商家之間的交易。
你不需要存儲所有數(shù)據(jù)庫實例中的所有數(shù)據(jù)庫行。如果你能劃分數(shù)據(jù)庫行,并將它們存儲在不同實例中的數(shù)據(jù)庫分區(qū),那么你就能充分發(fā)揮使用模式的局部性。這將減少你所需要的服務(wù)器實例的數(shù)量,因而減少公有云服務(wù)的成本。
你將應(yīng)用程序轉(zhuǎn)移到公有云后,實際上它可能很順暢地運行,沒有任何變化。不過,如果你注意到CSP如何收費,并結(jié)合你的應(yīng)用程序使用計算、內(nèi)存、存儲和網(wǎng)絡(luò)帶寬等資源的模式,很容易降低公有云的費用。借助一些代碼重構(gòu)優(yōu)化應(yīng)用程序本身也許能提升應(yīng)用程序的性能,并延長使用壽命,而試用并微調(diào)你自己的默認實例以及自動擴展規(guī)則也許有助于進一步降低CSP成本。
英文原文鏈接:http://www.computerworlduk.com/how-to/cloud-computing/3373508/how-to-optimise-public-cloud-applications/
文章編輯:CobiNet(寧波)
本公司專注于電訊配件,銅纜綜合布線系列領(lǐng)域產(chǎn)品研發(fā)生產(chǎn)超五類,六類,七類屏蔽網(wǎng)線/屏蔽模塊及相關(guān)模塊配件, 我們是萬兆屏蔽模塊,10G屏蔽模塊,屏蔽線生產(chǎn)廠家。
歡迎來電咨詢0574 88168918,郵箱sales@cobinet.cn,網(wǎng)址www.idouxiong.cn
?2016-2019寧波科博通信技術(shù)有限公司版權(quán)所有浙ICP備16026074號