華為云計算 云知識 Serverless 高速發(fā)展,華為云推出 FunctionGraph2.0
Serverless 高速發(fā)展,華為云推出 FunctionGraph2.0

隨著數(shù)字經(jīng)濟的快速發(fā)展和擴張,傳統(tǒng)單體架構和微服務架構愈發(fā)難以支撐企業(yè)業(yè)務轉型,導致企業(yè)無法快速響應激烈的市場競爭和用戶需求,所以越來越多的企業(yè)開始尋求應用現(xiàn)代化,而無服務器架構(Serverless)正好可以解決這一難題。

Serverless 技術的興起,極大簡化了 云計算 的編程模型,讓開發(fā)者無需再關注資源申請、環(huán)境搭建、 負載均衡 、擴縮容等服務器相關的底層操作,只要聚焦核心業(yè)務上層應用邏輯的開發(fā)創(chuàng)新與實現(xiàn)即可,這為企業(yè)降本提質增效、企業(yè)數(shù)字化轉型和應用現(xiàn)代化帶來了希望的曙光。

值得關注的是,在云計算「下半場」,Serverless 在戰(zhàn)略方向和新興技術方面的表現(xiàn),已經(jīng)成為各大廠商和開源社區(qū)的共識。

在單體架構時代,底層設施和開發(fā)運維都需要開發(fā)者親力親為,這不僅降低了開發(fā)者的工作效率,也不利于行業(yè)的進一步發(fā)展。這一過程就好比你全款買了一輛車,不僅需要學駕照還得會開車,用車的時候還會涉及加油、保險、保養(yǎng)等事情及相關費用。

到了微服務時代,開發(fā)者只需要自行在云上租賃虛機、容器等基礎設施即可,底層搭建可以交給服務提供商,相對減輕了開發(fā)者的壓力,就好比租車出行,雖然不用關注買車、保養(yǎng)等事情,但仍需要學駕照會開車,使用期間關注車況、路況等等。

為了更好解放開發(fā)者生產(chǎn)力,讓開發(fā)者更加聚焦業(yè)務價值,于是 Serverless 架構應運而生。在 Serverless 架構時代,開發(fā)者不需要關心底層操作系統(tǒng)、虛擬機、容器等基礎設施,僅實現(xiàn)業(yè)務邏輯,用時付費即可。這一過程就像是用戶打車出行,用時坐車抵達目的地付費即可,連駕照都不需要學,也不需要關注車況、路況等。

因此,Serverless 給用戶帶來了自動駕駛的體驗,它給商業(yè)帶來了省錢,給業(yè)務部署帶來了免運維,給 DevOps 帶來了單機端的編程體驗。

Serverless 高速發(fā)展,華為云推出 Function Graph2.0-云投網(wǎng)
 

Serverless 能夠解除云對業(yè)務的束縛,并提供新的計算模式、新的開發(fā)模式、新的使用模式、新的資源概念、新的商業(yè)模式和新的服務生態(tài),把云上業(yè)務變成無服務器、按需供給、按需計費,幫助企業(yè)降本、業(yè)務提質、開發(fā)增效。

為了幫助更多的企業(yè)享受 Serverless 技術紅利,作為行業(yè)的領跑者華為云在 Serverless 的基礎設施上,以華為元戎為底座,推出了華為云 FunctionGraph2.0 以及各項泛化服務,該產(chǎn)品不僅能夠支持全場景應用,也可以給用戶帶來更快彈性、更快上線、更簡運維等極致的體驗。

華為云 Serverless 函數(shù)計算服務 FunctionGraph2.0

FunctionGraph2.0 作為華為云 Serverless 解決方案重要產(chǎn)品之一,是一項基于事件驅動的函數(shù)托管計算服務,開發(fā)者只需編寫業(yè)務函數(shù)代碼并設置運行的條件,無需配置和管理服務器等基礎設施,函數(shù)以彈性、免運維、高可靠的方式運行。

Serverless 高速發(fā)展,華為云推出 Function Graph2.0-云投網(wǎng)

隨著整個業(yè)務對 Serverless 的關注度持續(xù)升溫,Serverless 的應用場景日趨復雜,這對 Serverless 技術提出了新的挑戰(zhàn)。

為了滿足用戶各種復雜的業(yè)務訴求,華為云 FunctionGraph 以華為元戎作為全新內(nèi)核全面升級,并憑借華為元戎的內(nèi)置數(shù)據(jù)系統(tǒng),成為業(yè)內(nèi)首個支持有狀態(tài)的函數(shù)服務。

相比 1.0,2.0 的版本冷啟動時延更低、 彈性伸縮 更快,可提供快速低成本的微服務 Serverless 化改造。華為云 FunctionGraph2.0 旨在打造新一代函數(shù)計算平臺,幫助更廣泛的開發(fā)者使用 Serverless 方式,支持更復雜更豐富的應用場景,滿足用戶多樣需求。

比如:視頻轉碼處理屬于計算密集型,在處理的時候對資源的消耗很大,而且看視頻的用戶有很明顯的波峰波谷,比如晚上時分用戶數(shù)量會明顯會增加,為了應對這種波峰波谷,傳統(tǒng)模式需要提前預估好最大資源需求量,這導致了資源利用率比較低。

使用華為云 FunctionGraph2.0,可以把視頻切分、轉碼、特效處理等以函數(shù)的方式上線,讓開發(fā)者無需提前預估資源量,就能使視頻轉碼成本降低 80%。

在金融領域,傳統(tǒng)金融分析師經(jīng)常要通過 Excel 表格或者 Python 科學計算庫來做風險、量化投資評估,隨著計算數(shù)據(jù)量越來越大,無法快速獲得計算結果,往往要到第二天才能出結果,無法做到實時評估,從而可能帶來投資損失。

基于華為云 FunctionGraph2.0 提供的能力,金融分析師只要在代碼中加一些裝飾器,就可以將原來單機計算任務自動轉化成函數(shù)執(zhí)行,實現(xiàn)單機程序自動并行到集群上運行,帶來幾個數(shù)量級的性能提升。既享受到云上算力優(yōu)勢,又享受到 Serverless 體驗。

快速低成本的微服務 Serverless 化改造

從當下的市場現(xiàn)狀來看,微服務和函數(shù)在未來幾年可能是一個共存的形態(tài),當前存在著大量微服務應用,那么如何高效地支撐其 Serverless 化,快速享用到 Serverless 的技術紅利,是每個研發(fā)需要面對并解決的問題。

Serverless 高速發(fā)展,華為云推出 Function Graph2.0-云投網(wǎng)

針對 Web 服務,華為云 FunctionGraph2.0 提供 Http 函數(shù)類型,通過 API 網(wǎng)關直接把 HTTP 請求透傳給 Web 服務,用戶只需把原有的 Web Server 代碼打包為一個 Http 函數(shù),即可近乎 0 成本快速完成 Serverless 化改造,享受 Serverless 所帶來的彈性、按需收費等優(yōu)勢。

Serverless 高速發(fā)展,華為云推出 Function Graph2.0-云投網(wǎng)

除了 Http 函數(shù)外,支持自定義容器 鏡像 也是兼容原有服務的一種方式。開發(fā)者可以直接把容器鏡像作為交付件提交給 FunctionGraph,F(xiàn)unctionGraph 會把該函數(shù)處理成為一個 Http Server,HTTP Server 用于接收函數(shù)的所有入口請求,包括事件觸發(fā)和 Http 函數(shù)調用。讓開發(fā)者無需改造代碼或重新編譯二進制依賴,本地調測與線上環(huán)境一致。同時自定義容器鏡像方式兼容了原有容器生態(tài)。

將讀寫時延降低 10 倍,極大拓寬 Serverless 的應用范圍

眾所周知,大部分應用是有狀態(tài)的,而當前市面上大部分 Serverless 產(chǎn)品均不支持有狀態(tài),開發(fā)者在使用過程中需要進行狀態(tài)訪問、存儲、失效和并發(fā)控制等管理。

與此同時,狀態(tài)數(shù)據(jù)需要外置對外部存儲頻繁讀寫,導致通信/計算 (序列化和反序列化) 開銷變大,而且外部存儲難以進行彈性伸縮,不足以支持延遲與吞吐敏感型應用。

華為云 FunctionGraph2.0 不僅支持傳統(tǒng)無狀態(tài)函數(shù),而且支持狀態(tài)數(shù)據(jù)內(nèi)置的有狀態(tài)函數(shù)。

基于有狀態(tài)函數(shù),開發(fā)者可以不用關心狀態(tài)的存取以及各種鎖的操作等,幫助開發(fā)者屏蔽狀態(tài)管理的復雜度,簡化應用開發(fā)邏輯;有狀態(tài)函數(shù)可以直接訪問數(shù)據(jù),由于狀態(tài)數(shù)據(jù)內(nèi)置,所以函數(shù)無需訪問外置存儲,較大地降低了通信/計算開銷。相比無狀態(tài)函數(shù),讀寫時延降低 10 倍,對延遲與吞吐敏感型應用、以狀態(tài)為中心的計算更具友好性。

比如,在今天的很多游戲場景中,用戶每次登陸都需要訪問上次的房間、進度數(shù)據(jù)等狀態(tài),如果通過無狀態(tài)函數(shù)則需要頻繁訪問外置數(shù)據(jù),導致時延過長,無法保證游戲競技最看重的實時體驗。

而華為云 FunctionGraph2.0 有狀態(tài)函數(shù)通過讀取「記憶」可直接內(nèi)部訪問數(shù)據(jù),為用戶提供極致流暢的游戲體驗。

回顧 Serverless 軟件架構的演進歷程,最初的 Serverless 負載假設是:短暫、異步、可擴展的并行任務;獨立、無狀態(tài)、不需要瞬時冷啟動;易被 Vendor 鎖定,這樣的假設會導致 Serverless 的應用場景非常受限。

Serverless 高速發(fā)展,華為云推出 Function Graph2.0-云投網(wǎng)

隨著 Serverless 技術逐漸被大眾采納,應用不斷地豐富、復雜。華為云認為,未來,Serverless 技術將朝著更加通用的方向發(fā)展,Serverless 支持的負載應當具備如下特征:任意的可并行、可擴展的計算任務;有狀態(tài)、復雜邏輯的微服務應用;開放、支持多云,這也是華為云 Serverless 努力的方向。

Serverless 或將為互聯(lián)網(wǎng)行業(yè)帶來跨越式的變革,接下來會有更多的企業(yè)享受到 Serverless 帶來的開發(fā)紅利,Serverless 技術未來可期。