Serverless爆發,AWS微軟卡位,騰訊雲阿里雲華為雲緊跟

本文作者:劉學習/Fiyinghare

3月10日,雲原生基金會CNCF發佈了2019年年度調查報告。41%的受訪者表示已經在使用無服務器Serverless計算,20%的受訪者表示計劃在未來12-18個月應用Serverless計算。

之前的3月1日,市場研究機構Forrester發佈的最新報告認為,Serverless計算的興起,讓FaaS成為繼IaaS、PaaS、SaaS之後一種新的雲計算能力提供方式。

在Serverless計算最主要的技術方向——函數即服務平臺(FaaS)方面,AWS、微軟兩家企業居於領導者象限,騰訊雲、阿里雲與谷歌雲、Nimbella、IBM、Cloudflare等處於強勁表現者象限,Oracle則處於挑戰者象限。

雲計算企業已經習慣了“大投入有大回報”的行業規律。從2014年開始,雲服務商不管是AWS、微軟、谷歌雲,還是國內的阿里雲、騰訊雲、華為雲、百度智能雲等,在Serverless上都有大筆投入。

2020年,Serverless服務市場將迎來大爆發的機會。而現在Serverless服務市場新座次的排定,意味著一個新市場的盛宴開場了。

Serverless爆發,AWS微軟卡位,騰訊雲阿里雲華為雲緊跟

1.Serverless到了爆發的時候了

14年前,當谷歌、AWS提出雲計算會實現“No Hardware”時,IBM、HP等企業肯定會啞然失笑。

14年後,雲計算迎來拐點,2019年全球雲上的IT基礎設施佔比首次超過傳統的數據中心,成為市場的主導者。

大概十多年前,Salesforce喊出“No Software”時,甲骨文對此嗤之以鼻,“量你也搞不出多大大名堂”。

十年後,Salesforce成為一家市值超過上千億美元的CRM SaaS服務公司,甲骨文也不得不緊隨其後,讓軟件上雲。

雲計算產業的發展離不開營銷、銷售,但是技術創新在雲計算產業發展中所發揮的作用被驗證了無數次。

2014年,AWS首先提出Serverless計算,推出了將雲計算按需使用、按量計費粒度降低的新技術。若干年後再看,會不會像No Hardware、No Software一樣改變產業格局呢?

2020年年初,Serverless計算就這麼接近了爆發的奇點。

KBV研究公司發佈的最新報告《全球Serverless架構市場》顯示,Serverless計算已發展成為部署雲應用和服務的一個關鍵要素。全球Serverless架構市場的規模預計到2024年將達到140億美元,預測期內將以23.4%的年複合增長率增長。

在接受中國軟件網等媒體記者採訪時,騰訊雲Serverless產品副總監張浩明確表示:“Serverless市場大爆發的時候到了,2020年將是Serverless技術的元年,將會有大量的主流應用,主流企業包括一些世界500強企業的核心應用將會從原來的主機架構或者容器架構遷移到Serverless。” 已經有一些海量的業務如騰訊視頻等海量服務正在遷移到Serverless平臺。

在技術層面,Serverless計算已經具備了支撐海量業務的能力。

他說,在2017、2018年,很多開發者在用Serverless計算時經常垢病的一個問題就是性能差。原因是由於底層還是採用通用的容器、虛擬化的技術,在整個調用Serverless單元的生產過程中效率比較慢,往往觸發一個請求,在彈性擴縮時,會帶來前端大量的超時。而騰訊雲現在把SLA的概率提高到了5個9之上,把整個冷啟動的概率降低足夠低。

張浩介紹說:“在遇到冷啟動的情況下,我們會在200毫秒以內分配一些新的布點。同時,在虛擬網絡的加速、租戶隔離安全的升級等技術基礎領域,做到支撐核心的應用遷移到Serverless。”

Elastic中國公司總經理王剛告訴中國軟件網,在市場和客戶認知方面,企業CTO的核心要求就是讓產品更快速地上線,讓技術架構更快速地適應市場的變化,同時技術架構是穩定、可靠、可擴展的。從這兩方面看,目前Serverless技術完全吻合訴求,具有擴展應用的機會。

京東雲技術專家張金柱接受採訪時表示,從IaaS過渡到微服務以及現在的Serverless,雲計算讓業務人員不用過多擔心技術,而是專注業務。從軟件架構發展的角度,單體結構發展到微服務以及分佈式,都是技術迭代的必然結果。

至於Serverless對於SaaS服務商的影響, 張金柱表示,如果非得要談Serverless對於SaaS服務的影響,只能說讓SaaS服務專注於業務,可以自動擴容。對於SaaS開發,則一點影響都沒有。

接受記者採訪的多個SaaS服務商則明確表示,底層技術包括Serverless對應用層及業務影響不大。Serverless對於SaaS服務開發與部署幾乎沒有影響。

張浩表示,從底層技術的發展以及客戶對Serverless的一個認知,到Serverless價值的落地逐步被大家接受,在2020年,市場將會繼續迎來10倍以上甚至20倍、30倍的爆發性的增長

2.Serverless是雲計算第三代通用計算技術

雲計算有計算、存儲、網絡、數據庫、AI等各種技術,Serverless屬於計算大類,就是無服務器技術。

在雲原生計算基金會給出的Serverless的定義中,有幾個核心點:

首先,Serverless計算並不意味著不再需要使用服務器來運行代碼,代碼仍需要運行在服務器上,對外提供服務。只是服務器與用戶不直接面對面了。AWS Lambda之類的服務後面有一大堆服務器。核心要義是在無服務計算時代,研發人員無需對服務器進行監控、配置、更新、擴容等運維操作。

其次,客戶只需要將代碼上傳到雲廠商提供的無服務器計算平臺上即可,雲服務商會保證代碼能正常運行,當流量突增時,自動對服務器進行擴容;流量減少時,對服務器進行縮容。

Serverless爆發,AWS微軟卡位,騰訊雲阿里雲華為雲緊跟

第三,Serverless可以根據用戶請求來計費,完全做到按量計費。Serverless技術可以讓雲計算做到像使用水和用電一樣,按需索取,並能真正做到按量付費。

第四,運維操作對研發人員來說都是黑盒的,會將開發人員從繁瑣的運維工作中解放出來。

一個互聯網應用一般要經歷三個環節——產品設計、產品開發以及產品運維運營。現在大量的開發者和企業已經認可了雲計算的模式,往往把產品運維環節交給雲服務商完成。

但是並不是所有的運營團隊都擁有完整的技術架構部門和專家團隊,產品的穩定性和業務的穩定性會遇到挑戰。Serverless的價值就是讓用戶把所有的人力和精力聚焦產品設計和產品開發,而把運維徹底交給運營商,降低用戶成本和運維的難度。

百度智能雲宋亞鵬告訴中國軟件網,和DevOps概念提倡的通過一系列工具和自動化的技術來降低運維的難度,促進研發運維一體化不同,Serverless更像是一種NoOps,即通過“不用做”的方式來解決“如何更高效做”的問題。

一般認為Serverless應用使用的技術包括BaaS與FaaS兩類。BaaS(Backend as a Service,後端即服務),提供的是後端服務級支持,主要針對一些富客戶端應用。FaaS(Function as a Service,函數即服務),其中的函數是業務邏輯代碼的執行單元,提供的是代碼級支持。

需要注意的是,這兩個領域是有重疊的。目前大家廣泛討論的Serverless主要集中在FaaS方向,也是國內外雲服務商爭搶的領域。

Serverless爆發,AWS微軟卡位,騰訊雲阿里雲華為雲緊跟

因此,Serverless也被稱為函數計算。函數計算的基本使用流程包括創建函數、提供代碼、配置觸發器、配置運行環境、執行函數、查看日誌等。

張浩說,騰訊雲把Serverless技術看作是繼虛擬機、容器之後的第三代通用計算技術。

那麼,Serverless計算能給用戶帶來哪些價值呢?O’Reilly最近針對Serverless的應用情況進行了調查。


Serverless爆發,AWS微軟卡位,騰訊雲阿里雲華為雲緊跟

Serverless 計算能給用戶帶來價值 資料來源:O’Reilly

結果表明,用戶最看重的三大價值包括:

首先,減少運營成本是大家採用 Serverless 的第一大原因,應用Serverless之後,就無需為潛在的流量高峰購買大部分時間處於空閒狀態的服務器。

第二,自動按需擴展。採用了Serverless 之後,可以隨時擴展到當前的使用量,消除了意外或者季節性流量高峰的困擾。

第三,不要關注服務器的維護工作。由於企業中大部分開發人員都是軟件工程師,並不是系統管理員,所以對於軟件的修復、保護和管理並不擅長,而使用Serverless之後,這些工作都可以交給供應商。

3.Serverless服務市場格局初步形成

Forrester的報告已經給出了Serverless計算的幾大陣營,以及幾大陣營中不同企業的位置。

Forrester的報告聚焦於全球領先雲廠商,從開發體驗、編程模式、編譯環境等十個維度綜合考量,全面評估FaaS服務綜合實力,幫助企業用戶甄選適合自身的Serverless計算服務提供商。

第一大陣營當然是公有云市場的幾大巨頭,提供Serverless計算服務。居於領導者象限的AWS、微軟,處於強勁表現者象限的中國的騰訊雲、阿里雲,以及谷歌雲。

Serverless的市場格局基本上是IaaS市場格局的複製。Serverless技術首先由AWS提出,並率先推出雲服務,其他企業基本上是跟隨者。微軟、谷歌雲等提供了Serverless雲服務。

中國雲計算企業在Serverless發展中迅速跨入先行者行列。騰訊雲FaaS能力憑藉在產品體驗、安全性、戰略願景等方面的優勢脫穎而出,成為中國進入全球Top3的雲廠商。

阿里雲2018年正式啟動內部Serverless資源底座的準備工作,2019年基於搭建好的底座建設上層前端框架,到2019年雙十一,阿里雲已經在部分電商導購業務上開始實踐這套新的研發模式。

另一陣營就是包括即將從公有云市場轉入PaaS市場的IBM、Oracle等企業,提供Serverless創建平臺、工具。

行業專家認為,IBM在2019年收購Red Hat和Oracle與微軟結為合作伙伴,表明了這兩家公司在2020年的發展方向。

IBM和Oracle正在將重點從雲提供商領域轉移到開發平臺領域。IBM和Oracle試圖在公共雲市場一較高下,但是根本沒有足夠的資金與另外四家雲巨頭相比拼。

IBM會改而專注於幫助客戶通過任何主要的雲供應商使用OpenShift開發平臺,更新和改造核心業務應用軟件。

IBM Bluemix雲端平臺推出OpenWhisk服務,同時將OpenWhisk以開放原始碼模式釋出,提供企業自建Serverless架構。

而Oracle將專注於其擅長的領域——軟件即服務(SaaS)和自主數據庫產品,引導客戶使用Azure的雲開發服務,包括AI/機器學習、Kubernetes/容器、物聯網及其他新興創新技術。

Oracle 發佈了Fn,Fn是一個新開源的、雲平臺無關的Serverless平臺。它初始啟動時擁有廣泛的Java能力和一個JUnit測試框架,但也支持“任何編程語言”。

第三陣營就是創新企業Nimbella、Cloudflare等,提供Serverless創建工具。

使用Nimbella、Cloudflare等提供的工具,可以輕鬆構建、管理、測試、監控用戶的無服務器應用架構。

第四陣營就是開源FaaS平臺/框架/工具。儘管各個雲廠商都在大力推廣自己的 Serverless服務、產品,但是開發者普遍還是會擔心被廠商綁定,因此具備一定規模的組織會基於開源方案,如Knative,搭建自己的Serverless平臺。而一旦某個開源方案成為主流,雲廠商就會主動去兼容開源標準並增大社區投入。

目前,Serverless開源項目很多,如目前GitHub Star數最高的Serverless框架,與主流雲廠商集成得很好。Knative是Google發佈的基於Kubernetes的Serverless框架。分佈式無服務器平臺OpenWhisk最開始由IBM和Adobe驅動,後來捐給Apache基金會,2019年7月晉升為頂級項目等。

4.雲巨頭試水Serverless服務

最早提出Serverless概念的是AWS,2014年年底Amazon Lambda也正式推出,此後全球各大雲服務廠商相繼推出各自的Serverless平臺,典型如Google Cloud Functions、Azure Functions、IBM Cloud Functions等。

國內市場Serverless開始普及在2017年,騰訊無服務器雲函數、阿里雲函數計算相繼推出,華為雲、百度智能雲也都推出了自己的方案。

AWS藉助領先兩年的優勢,以及硬件創新和軟件創新中投入數十億美元而脫穎而出。AWS擁有種類最豐富的Serverless函數,可以協同運行

AWS採取的方法是促進用戶心甘情願依賴亞馬遜,積極擔當基礎設施創新的重任,那樣企業能夠專注於業務邏輯的創新。雲原生計算基金會(CNCF)的調查數據表明,AWS Lambda在蓬勃發展的Serverless市場佔有70%的份額。

在Serverless領域,2017年,騰訊雲推出了TCF(TencentCloudFunction),成為國內首家推出Serverless技術的雲服務商。2018年推出了“小程序·雲開發”,2019年提出了騰訊Serverless 2.0戰略。三年來,騰訊雲Serverless的用戶規模以及對產品下載、調用等次數每年都成十倍的增長。

3月6日,騰訊雲正式向外界展示了其在Serverless領域的最新進展,包括率先在業界推出1毫秒計費模式,並通過進一步打通上下生態鏈,構建三步上雲的極致全雲端開發體驗。

張浩介紹,騰訊雲打通了兩大生態,構建開源新標準。一個是在微信生態方面,推出“小程序·雲開發”產品,可以大幅提升小程序的開發效率。另一個是在開源生態建設層面,騰訊雲通過開源協同的方式持續向Serverless Framework社區做貢獻。

當前阿里雲上實現 Serverless 技術的產品有Serverles應用引擎和函數計算FaaS。

Serverless 應用引擎是面向應用的Serverless PaaS平臺,它向上抽象了應用的概念,支持Spring Cloud、Dubbo、HSF 等流行的開發框架,並通過WAR包、JAR包和鏡像等多種方式部署應用。

尤其在容器與Serverless整合方面,阿里雲宣佈彈性容器實例ECI(Elastic Container Instance)正式商業化,ECI將Serverless和Container技術結合,提供的一款敏捷安全的Serverless容器運行服務。通過ECI服務,用戶無需管理底層服務器,只需要提供打包好的Docker鏡像,即可運行容器,並僅為容器實際運行消耗的資源付費。

Serverless爆發,AWS微軟卡位,騰訊雲阿里雲華為雲緊跟

華為雲的靳曉楠向中國軟件網介紹,華為雲函數工作流FunctionGraph是一項基於事件驅動的函數託管計算服務。通過函數工作流,只需編寫業務函數代碼,並設置運行的條件,無需配置和管理服務器等基礎設施,函數以彈性、免運維、高可靠的方式運行。

靳曉楠說,華為雲的這款產品優勢包括無服務器管理、高彈性、高效的開發體驗、按需計費等。

5.服務落地遭遇新挑戰

目前Serverless 的落地情況如何?

近日,O’Reilly的調查表明,超過2/3的受訪者表示,其組織的Serverless落地都是成功的,Serverless已經超越“炒熱度”的階段,已經成為了一種實際可行的基礎架構選擇。

本來以為Serverless作為一項比較新的技術,落地情況可能不太樂觀,但有趣的是,調查發現,40%的受訪者表示已經採用了Serverless,這個結果完全出乎意料。

Serverless爆發,AWS微軟卡位,騰訊雲阿里雲華為雲緊跟

企業組織採用Serverless計算的比例 資料來源:O’Reilly

現在應用Serverless存在哪些挑戰呢?

首先,教育和培訓現有員工。由於Serverless還是一個比較新的技術,很難找到標準、正式的培訓,所以企業必須形成特定的文檔培訓員工,同時需要根據實踐案例不斷更新文檔。

另外,由於 Serverless處於高速發展階段,各大供應商也在不斷推出新功能,這也給企業培訓員工增加了不少難度。

第二,供應商鎖定。這是一個大家都會擔心的問題,某個供應商平臺編寫的代碼是不是能夠遷移到其它平臺。由於Serverless還是一個新興市場,所以關於供應商之間的可移植性問題還處於探索階段。

第三,集成/測試困難。對於Serverless架構而言,測試是複雜且勞動密集型的工作,需要處理更多的場景,同時因為需要依賴環境不同,集成也是一個需要解決的問題。

張浩說,現在提供Serverless技術服務的不同服務商都有各自的標準,在函數調用、事件觸發、函數的黃金變量的定義等方面,都擁有各自一套封閉的標準,缺乏開源的規範和開源的生態支持。

騰訊雲就從多個方面克服用戶目前面臨的這些挑戰。目前,騰訊雲也已經擁有一些Serverless應用用戶,如英孚教育以及人人視頻等知名企業,都通過使用騰訊雲Serverless實現了效率和成本的優化組合,給企業在業務上真正帶來更高的效率、更快的迭代和更快地上線。

阿里雲原生應用平臺高級技術專家許曉斌接受記者採訪時表明,2020年,Serverless 已經開始從偏離線業務進入在線業務。真正的按請求次數計費和從零到1的響應時間是一個天然的矛盾,以 FaaS為代表的Serverless技術一開始都是從對響應時間不敏感的、事件驅動的偏離線業務入手。

但是今天包括AWS Lambda Provisioned Capacity和Azure Functions Premium plan在內的產品特性,都在讓用戶稍微付出一點額外的成本以換取更低的響應時間。這對於在線業務來說,無疑是更適合的。

另外,Serverless 不僅僅是應用或者函數的能力,也會加速推動基礎設施和服務 Serverless化。同時以Knative為代表的開源解決方案會得到越來越多的關注。

中國軟件網認為,狹義來講,雲原生包含以容器、服務網格、微服務、Serverless為代表的雲原生技術,帶來一種全新的方式來構建應用。它不但可以很好的支持互聯網應用,也在深刻影響著新的計算架構、新的智能數據應用。雲原生是個不斷在發展的技術方向,其定義也會在日後不斷演進。

Serverless計算是真正讓雲計算變成社會商業基礎設施的一個實現路徑,也更接近現在業內提倡的雲原生的方式。因此,人們在使用雲計算的過程中自然就應該按照Serverless的方式來使用。


分享到:


相關文章: