分布式+可移植,上云后降本增效的關(guān)鍵?
試想一下:如果沒有云計(jì)算,商業(yè)將會(huì)是什么樣子?
云計(jì)算和多云戰(zhàn)略的出現(xiàn)為全球企業(yè)帶來(lái)了革命性的變化。然而,雖然技術(shù)已經(jīng)發(fā)展了這么多年,但“多云”所固有的復(fù)雜性仍然是企業(yè)面臨的主要痛點(diǎn)。選擇多云戰(zhàn)略的企業(yè),無(wú)不希望在提高性能的同時(shí)控制云成本支出。是否有什么最佳實(shí)踐能和幫助我們實(shí)現(xiàn)這一目標(biāo)?
在Akamai看來(lái),隨著技術(shù)的不斷發(fā)展和日漸成熟,目前想要實(shí)現(xiàn)這個(gè)目標(biāo),方法相比云技術(shù)誕生之初已經(jīng)有了很大區(qū)別。現(xiàn)在,上云企業(yè)更需要看重的,應(yīng)該是云平臺(tái)的“分布式”特性,以及基于微服務(wù)的可移植能力。
分布式云平臺(tái),云原生應(yīng)用的正確解決方案
Akamai委托Forrester Consulting進(jìn)行的“The Great Cloud Reset”研究發(fā)現(xiàn):借助分布式云架構(gòu)的優(yōu)勢(shì),可以順利實(shí)現(xiàn)性能與成本之間的平衡。因?yàn)榉植际皆破脚_(tái)可以解決企業(yè)(尤其是全球化企業(yè))在很多方面遇到的難題。
- 成本:企業(yè)預(yù)計(jì)分布式云計(jì)算將有助于全面節(jié)約成本。78%的受訪者表示,避免或最小化出站成本是分布式云合作伙伴的一個(gè)關(guān)鍵特征。
- 性能:需要提高從核心到邊緣的整體網(wǎng)絡(luò)性能。92%的受訪者表示,擁有包含邊緣的靈活云架構(gòu)對(duì)于提高性能并為用戶提供更好的體驗(yàn)是“重要”或“關(guān)鍵”的。
- 匹配:將正確的工作負(fù)載與正確的云進(jìn)行戰(zhàn)略結(jié)合是分布式架構(gòu)的另一個(gè)特征。65%的行業(yè)受訪者表示這有助于優(yōu)化云支出。此外還有63%的人表示,為云選擇合適的工作負(fù)載將增加收入。
- 簡(jiǎn)化:分布式云將幫助企業(yè)解決多云戰(zhàn)略的復(fù)雜性。53%的受訪者將復(fù)雜性視為其主要擔(dān)憂,49%的受訪者表示,控制與蔓延、數(shù)據(jù)出站費(fèi)用和不可預(yù)測(cè)的定價(jià)相關(guān)的成本是一項(xiàng)重大挑戰(zhàn)。
- 合規(guī):43%的受訪者表示,他們需要一個(gè)能夠滿足全球日益突出的數(shù)據(jù)駐留和主權(quán)要求的云提供商。
此外,很多受訪企業(yè)還表示,分布式云架構(gòu)還能在其他很多方面為自己帶來(lái)價(jià)值,例如:
- 行業(yè)性能指標(biāo):當(dāng)API調(diào)用、搜索和結(jié)賬流程等都存在于云生態(tài)系統(tǒng)中時(shí),如何優(yōu)化這些行業(yè)性能指標(biāo)都是工作優(yōu)先列表中的重中之重。分布式云以及分布式數(shù)據(jù)庫(kù)等服務(wù)可在擴(kuò)展以滿足不斷增長(zhǎng)的客戶群和日益復(fù)雜的應(yīng)用程序的需求時(shí)幫助企業(yè)解決這些挑戰(zhàn)。
- 推動(dòng)創(chuàng)新:分布式云讓數(shù)據(jù)、計(jì)算和存儲(chǔ)更接近客戶,也可以讓業(yè)務(wù)應(yīng)用程序提供面向未來(lái)所需的實(shí)時(shí)分析能力,企業(yè)可以利用分布式云來(lái)降低資源成本,同時(shí)提供領(lǐng)先于競(jìng)爭(zhēng)對(duì)手的創(chuàng)新。這些創(chuàng)新包括個(gè)性化搜索結(jié)果、量身定制的產(chǎn)品推薦、社交分享和推薦、實(shí)時(shí)庫(kù)存管理、等候室、動(dòng)態(tài)定價(jià)功能等。
- 改善用戶體驗(yàn):在整個(gè)分布式云平臺(tái)中分配工作負(fù)載還能在客戶體驗(yàn)方面獲得回報(bào)。當(dāng)企業(yè)利用特定云最擅長(zhǎng)的功能時(shí),就可以實(shí)現(xiàn)工作負(fù)載效率的優(yōu)化,這反過來(lái)也會(huì)改善用戶體驗(yàn)。
對(duì)于跨國(guó)企業(yè)來(lái)說,有必要在全球多個(gè)國(guó)家和地區(qū)運(yùn)行工作負(fù)載。借助多個(gè)云平臺(tái)良好分配的工作負(fù)載不僅可以提高性能,還可以滿足有關(guān)數(shù)據(jù)駐留和主權(quán)的日益嚴(yán)格的法規(guī)。
Forrester采訪過的專業(yè)人士幾乎一致認(rèn)為,遷移到分布式云計(jì)算平臺(tái)是構(gòu)建和部署云原生應(yīng)用程序的正確解決方案。該舉措有助于提升競(jìng)爭(zhēng)優(yōu)勢(shì)、改善客戶體驗(yàn)并提高利潤(rùn)。
基于微服務(wù)的可移植性,讓服務(wù)變得更高效
云平臺(tái)的可移植性是指將應(yīng)用程序和數(shù)據(jù)輕松遷移或部署到不同云服務(wù)提供商或云環(huán)境的能力。這種能力對(duì)企業(yè)來(lái)說具有重要意義。可移植的云平臺(tái)在降本增效方面的作用主要是通過下面幾方面體現(xiàn)的:
- 提高靈活性和自由度,使企業(yè)能夠更輕松地在不同云服務(wù)商之間進(jìn)行選擇,從而更有效地利用云資源。
- 成本優(yōu)化,根據(jù)性能要求、定價(jià)模型以及服務(wù)質(zhì)量選擇最具成本效益的云,并根據(jù)需求靈活調(diào)整。
- 避免供應(yīng)商鎖定,降低供應(yīng)商鎖定風(fēng)險(xiǎn),從而更靈活地適應(yīng)市場(chǎng)變化、技術(shù)創(chuàng)新以及競(jìng)爭(zhēng)對(duì)手的行動(dòng)。
- 快速部署和遷移,幫助企業(yè)更快地響應(yīng)市場(chǎng)需求或擴(kuò)展業(yè)務(wù)。
- 增強(qiáng)業(yè)務(wù)的可靠性和彈性,需要時(shí)可以快速切換到另一個(gè)云平臺(tái),從而最大程度減少業(yè)務(wù)中斷。
那么問題來(lái)了:如何確保自己要在云中運(yùn)行的應(yīng)用程序和工作負(fù)載,本身就能靈活適應(yīng)不同云平臺(tái),從而能從一個(gè)平臺(tái)順利、安全地遷移到其他平臺(tái)呢?微服務(wù)架構(gòu)!
與傳統(tǒng)的單體式應(yīng)用不同,微服務(wù)架構(gòu)的應(yīng)用是可擴(kuò)展,并且是專注于單一職能的。這種架構(gòu)的應(yīng)用,會(huì)由每個(gè)自包含的模塊化單元負(fù)責(zé)處理一個(gè)更大規(guī)模系統(tǒng)中的一個(gè)特定功能,而大型應(yīng)用程序往往就可以由這種模塊化的組件或服務(wù)(如容器或無(wú)服務(wù)器計(jì)算)構(gòu)建而成。
我們可以將微服務(wù)看作由不同部門、預(yù)算和要求組成的業(yè)務(wù)。每年,這些要求都會(huì)根據(jù)公司需求的變化而變。隨著時(shí)間推移,我們的應(yīng)用程序也會(huì)面對(duì)不斷變化的要求,其中的某些方面可能會(huì)產(chǎn)生更多需求,有些方面則需要我們投入更多關(guān)注。此外,應(yīng)用程序中的不同方面可能還需要進(jìn)行不同程度的擴(kuò)展或縮放。微服務(wù)可以幫助我們?cè)诓挥绊懫渌矫娴那闆r下,以獨(dú)立的方式對(duì)應(yīng)用程序中的某些方面進(jìn)行縮放或擴(kuò)展。
微服務(wù)應(yīng)該只負(fù)責(zé)做一件事,并且做好這件事。此外,通過使用微服務(wù),我們還能在彈性和容錯(cuò)能力方面獲得一些固有的好處。微服務(wù)架構(gòu)旨在通過將故障約束到單個(gè)服務(wù)來(lái)防止出現(xiàn)影響整個(gè)系統(tǒng)的故障。如果出現(xiàn)特定故障,我們將知道故障位于哪里,并能在不影響其他東西的情況下解決這種故障。
使用微服務(wù)的原因
所以為什么要使用微服務(wù)?希望借助微服務(wù)架構(gòu)提高應(yīng)用和工作負(fù)載的可移植性,進(jìn)而利用可移植的云平臺(tái)降本增效。那么具體來(lái)說,這個(gè)目標(biāo)又是如何實(shí)現(xiàn)的?Akamai認(rèn)為,微服務(wù)可以幫助企業(yè)實(shí)現(xiàn):
- 更快的上市時(shí)間:微服務(wù)可以并行開發(fā)和部署多個(gè)組件,從而加速整體開發(fā)流程,縮短交付新功能所需的時(shí)間。
- 提高可擴(kuò)展性:微服務(wù)可以獨(dú)立擴(kuò)展,從而讓企業(yè)更高效地分配資源,同時(shí)更高效地處理不同工作負(fù)載或流量模式。
- 增強(qiáng)彈性:微服務(wù)去中心化的本質(zhì)特性降低了系統(tǒng)范圍內(nèi)故障的風(fēng)險(xiǎn),保證了持續(xù)的服務(wù)可用性以及更高的系統(tǒng)整體可靠性。
- 靈活性和適應(yīng)性:微服務(wù)可以讓企業(yè)為不同組件使用不同技術(shù)和框架,從而更容易適應(yīng)不斷變化的需求或融入新技術(shù)。
- 簡(jiǎn)化維護(hù)和更新:微服務(wù)的模塊化設(shè)計(jì)簡(jiǎn)化了系統(tǒng)的維護(hù)和更新,因?yàn)槊總€(gè)組件都可以在不影響整體系統(tǒng)的前提下單獨(dú)升級(jí)或替換。
微服務(wù)最佳實(shí)踐
根據(jù)對(duì)年來(lái)的工作經(jīng)驗(yàn)以及與不同行業(yè)客戶的交流,Akamai認(rèn)為在微服務(wù)的實(shí)施過程中,有很多重要的注意事項(xiàng),這些事項(xiàng)只要考慮周全,就可以幫助企業(yè)減少很多麻煩,更進(jìn)一步地發(fā)揮云平臺(tái)的各種效益。
簡(jiǎn)單來(lái)說,Akamai認(rèn)為,在實(shí)施微服務(wù)架構(gòu)時(shí)候最需要注意的就是保持微服務(wù)規(guī)模小巧、專注于負(fù)責(zé)單一業(yè)務(wù)能力,這一點(diǎn)至關(guān)重要。這樣我們才能輕松添加額外的功能并避免蔓延。然而,每個(gè)微服務(wù)的理想規(guī)模是多少,這并沒有什么明確標(biāo)準(zhǔn),而是需要根據(jù)具體應(yīng)用及實(shí)際需求來(lái)決定。
我們還需要針對(duì)失敗進(jìn)行相關(guān)設(shè)計(jì)。雖然多個(gè)服務(wù)和微服務(wù)運(yùn)行過程中,按照設(shè)計(jì)本身就具備與生俱來(lái)的容錯(cuò)能力,但額外的設(shè)計(jì)可以增加額外的彈性,例如重試機(jī)制、斷路器以及隔板。想象一下船舶為什么會(huì)安裝隔板。這些隔板可以保證船舶的結(jié)構(gòu)完整性,而如果船艙漏水,隔板關(guān)閉,也可以保證船不會(huì)沉沒。
微服務(wù)應(yīng)該圍繞領(lǐng)域驅(qū)動(dòng)(Domain-driven)的設(shè)計(jì)原則來(lái)設(shè)計(jì),這意味著要基于業(yè)務(wù)能力對(duì)服務(wù)建模,并使用通用語(yǔ)言來(lái)保障服務(wù)符合業(yè)務(wù)需求。領(lǐng)域驅(qū)動(dòng)的設(shè)計(jì)側(cè)重于圍繞對(duì)業(yè)務(wù)的深入理解來(lái)打造軟件系統(tǒng),其原則有助于指導(dǎo)設(shè)計(jì)過程,確保軟件與領(lǐng)域保持一致且能為業(yè)務(wù)提供價(jià)值。這些原則共同促進(jìn)了對(duì)業(yè)務(wù)領(lǐng)域的深入理解,有助于確保開發(fā)工作能與業(yè)務(wù)需求和不斷變化的要求緊密契合。
采取以API為先的方法進(jìn)行設(shè)計(jì)并實(shí)現(xiàn)API網(wǎng)關(guān),借此即可提供中央連接點(diǎn),從而促進(jìn)微服務(wù)和第三方子系統(tǒng)之間的通信。API網(wǎng)關(guān)負(fù)責(zé)處理大部分路由工作,以及身份驗(yàn)證、認(rèn)證、速率限制等工作。API的設(shè)計(jì)模式對(duì)于微服務(wù)的模塊化和可復(fù)用能力至關(guān)重要。
最后,對(duì)于微服務(wù),還有下列這些最佳實(shí)踐:
- 自動(dòng)化測(cè)試和部署:使用持續(xù)集成和持續(xù)部署(CI/CD)管道等自動(dòng)化工具測(cè)試和部署微服務(wù),從而降低錯(cuò)誤風(fēng)險(xiǎn),確保以快速、一致的方式部署服務(wù)。
- 使用容器:容器提供了一種輕量級(jí)、可移植的方式來(lái)打包和部署微服務(wù)。使用容器有助于簡(jiǎn)化部署流程,改善應(yīng)用程序的可擴(kuò)展性和可移植性。
- 監(jiān)視和觀察:微服務(wù)需要不斷監(jiān)視和記錄,以確保按照預(yù)期運(yùn)行,并及時(shí)發(fā)現(xiàn)存在的問題或錯(cuò)誤。日志聚合器和應(yīng)用程序性能監(jiān)視(APM)工具可以幫助我們做到這一切。通過跟蹤,我們還可以進(jìn)一步了解分布式系統(tǒng)中的數(shù)據(jù)流。這三大能力有助于針對(duì)性能獲得端到端的可見性。
- 保護(hù)服務(wù):應(yīng)通過身份驗(yàn)證、認(rèn)證授權(quán)、加密等最佳實(shí)踐措施保護(hù)微服務(wù)的安全,當(dāng)然,容器本身的安全性也不容忽略!為減小整體攻擊面,我們應(yīng)該通過強(qiáng)制執(zhí)行的策略來(lái)定義微服務(wù)能與其他服務(wù)通信的內(nèi)容。安全性應(yīng)該成為所有設(shè)計(jì)工作的一部分,并且需要在開發(fā)過程的每個(gè)階段進(jìn)行徹底的檢查,這樣才能獲得更安全的應(yīng)用程序,并妥善保護(hù)敏感數(shù)據(jù)。
Akamai云平臺(tái),為你的分布式和可移植目標(biāo)提供支持
作為一家實(shí)力過硬的云服務(wù)提供商,分布式云計(jì)算平臺(tái)已成為Akamai的核心業(yè)務(wù)之一。目前,該平臺(tái)已經(jīng)憑借26個(gè)核心云數(shù)據(jù)中心和4100+個(gè)邊緣計(jì)算節(jié)點(diǎn),深深扎根于全球130+個(gè)國(guó)家和地區(qū)。
利用全球分布的基礎(chǔ)設(shè)施,Akamai通過高性能、可擴(kuò)展、易管理的云服務(wù)器、存儲(chǔ)和網(wǎng)絡(luò)服務(wù),幫助企業(yè)降低成本、提高效率,實(shí)現(xiàn)更好的業(yè)務(wù)結(jié)果。同時(shí),我們還面向數(shù)字化營(yíng)銷、SaaS、游戲、電商等行業(yè)提供了定制化解決方案,幫助企業(yè)順利上云,快速擴(kuò)展,最終推動(dòng)業(yè)務(wù)成功走向全球!
如您所在的企業(yè)也在考慮采購(gòu)云服務(wù)或進(jìn)行云遷移,
點(diǎn)擊鏈接了解Akamai Linode的解決方案