分布式云時代,如何高效利用云計算資源?
數字化轉型的加快,讓越來越多的用戶都能獲取所需的計算資源,在云計算向分布式云時代演進的過程中,如何更加高效地管理和使用計算資源成為關鍵問題所在。
打破傳統架構模式,降低成本并簡化體系結構,用全新的思維更好地滿足用戶需求,函數計算這一無服務器計算(Serverless Computing)成為頭部廠商分布式云、云原生方面的關注焦點。
IT意義上的函數計算
定義:Serverless應用是分布式云原生的重要特征,由函數計算驅動的全托管Serverless計算服務是未來分布式云的重要特點。
云原生基金會(CNCF)認為:無服務器計算是指開發者在構建和運行應用時無需管理服務器等基礎設施。應用被解耦為細粒度的函數,函數是部署和運行的基本單位;用戶只為實際使用的資源付費。可見,serverless 計算能夠幫助應用開發者擺脫服務器等底層基礎設施管理的負擔,專注于業務層的創新。
定位:在未來5G/FTTH/WIFI6三千兆網絡環境下邊緣計算帶寬瓶頸獲得突破,未來分布式云算力或許是按每月函數調用次數來購買云服務,改變傳統算力按核數或個數來購買的商業模式。
無服務器計算的發展歷史
Serverless 不是一個新概念,計算、存儲等領域的很多服務都是 serverless 的模式。用戶不需要關心數據是如何存儲在底層服務器上,只為實際使用的存儲資源付費。
統計數據表明,近年來,各個云服務商推出的新服務/新功能,超過70% 都是 serverless 形態。隨著云端 serverless 類型的服務種類越來越豐富,用戶能夠快速使用多種服務構建彈性高可用的云原生應用。因此,serverless 計算正變得越來越流行。
2019 年,Serverless 就曾被 Gartner 稱為最有潛力的云計算技術發展方向,并被賦予是必然性的發展趨勢。Serverless 從底層開始變革計算資源的形態,為軟件架構設計與應用服務部署帶來了新的設計思路。
O'Reilly的一份調研數據表明,Serverless具備相當高的市場接受度,且市場前景廣泛:
函數計算的優勢
在傳統 Serverful 架構下,部署一個應用需要購買服務器,部署操作系統,搭建開發環境,編寫代碼,構建應用,部署應用,配置負載均衡機制,搭建日志分析與監控系統。
應用上線后,繼續監控應用的運行情況,要管理云主機、操作系統接入控制及補丁,還需關心CPU數量、內存大小、IP地址等;為應對業務量的波峰波谷變化,還必須提前預配置彈性伸縮負載均衡等策略。
而為了節省成本以及資源配置最優化,開發者或運維人員必須在業務運行過程中根據實際情況不斷調整彈性伸縮負載均等策略,以避免閑時資源太多。這個過程耗費大量人力成本與時間成本,而資源配置卻未必能時刻達到最優。
而在 Serverless 架構下,開發者只需要關注應用的開發構建和部署,無需關心服務器相關操作與運維,在函數計算架構下,開發者只需要編寫業務代碼并監控業務運行情況。
這將開發者從繁重的運維工作中解放出來,把精力投入到更有意義的業務開發上。
實時彈性伸縮也是函數計算的核心優勢之一,當用戶負載出現波峰時,系統能實時擴張資源,平滑應對峰值訪問。函數計算系統會監控用戶的負載變化,各組件均能夠根據用戶負載動態伸縮,分配給用戶匹配事件處理對應的能力。
由于函數計算采用分布式集群化部署,支持多可用區,如果某個可用區因自然災害或電力故障導致癱瘓,函數計算會迅速切換到同區域其他可用區的基礎設施運行函數,確保服務高可用,因此,函數計算還具備穩定高可用性。
函數計算在不同場景下可以使用不同的計量模式,按照實際使用資源計費,最大化提高資源利用率,有效幫助使用者降低成本。
函數計算的應用場景
第一,事件觸發類場景,如定制圖片, 定制事件,loT中的低頻請求,音頻轉換文字處理,自動程序消息傳遞,基于定時器處理/定時器任務,日志處理, SaaS事件處理,批量任務。
第二,流量突發類場景,如彈性擴展應對突發流量,轉碼和流量擴容,多媒體(視頻、圖片等)數據備份,圖片上傳、裁剪、分享等。
第三,處理大數據類場景,例如數據驅動后續分發,實時文件處理, 實時數據流處理,數據庫數據提取、轉換、加載。
第四,后端類場景,例如Web應用程序、loT后端、移動后端、 人工觸發。
函數計算可以大幅減低云計算的使用成本并提高云計算的使用效率,作為這個云計算市場向下一個階段的進化產物,函數計算將真正幫助企業實現只專注于業務和構建應用程序而不必擔心IT基礎設施,這也將成為云服務商未來競爭的關鍵。