天天看點

如何評估Serverless服務能力,這份報告給出了40條标準

編者按:兩年前,我們還在讨論什麼是Serverless,Serverless如何落地。如今,已經有評測機構給出了40條标準來對Serverless的服務能力進行評估,這些評估細則既是技術生态繁榮發展的一種表現,也可以作為新進入者評估Serverless落地成效的一種參考依據。 

在 Forrester 的這份函數即服務 (FaaS) 平台評估報告中,我們選擇了阿裡巴巴、亞馬遜、谷歌、華為、IBM、微軟、Nimbella、甲骨文和騰訊這 9 家最具影響力的提供商,并依據 40 條标準對其進行了研究、分析和評分。該報告展示了每個提供商在各方面的表現,旨在幫助從事應用程式開發與傳遞 (AD&D) 的專業人士找到最符合自身需求的提供商。 

Forrester Wave™:函數即服務 (FaaS) 平台 2021 年第一季度報告

FaaS 平台幫助開發人員快速建立雲原生服務  

FaaS 平台的抽象化讓開發人員不再需要關注複雜的容器或虛拟機叢集管理與擴容工作,進而可以快速建立雲原生微服務。将底層基礎架構的管理工作交給 FaaS 提供商之後,開發人員就可以在程式設計環境中,使用 Java、C#、JavaScript 或 Python 等熟悉的語言,将微服務編寫成簡單的小函數。然後,FaaS 提供商會根據服務要求,自動對這些微服務進行擴容或縮容。使用 FaaS 平台的開發人員表示,通過免于基礎架構管理,借助抽象化消除與此相關的複雜操作後,他們可以迅速将新的想法推入部署階段,同時可以根據執行微服務的實際資源需求來确定基礎架構費用。在挑選 FaaS 提供商時,開發人員應分析該提供商是否具備以下條件: 

  • 支援函數和容器打包。随着開發人員将越來越多類型的工作負載部署到 FaaS 平台,FaaS 平台應允許開發人員簡單地将一個函數打包成 ZIP 或 JAR 檔案并加以部署,或者将自定義代碼打包成符合開放容器标準 (OCI) 的容器,并部署與之對應的架構。FaaS 平台應同時支援這兩種選項,才能在開發部署 Web、内容和事件驅動的工作負載方面為開發人員提供最大的靈活性。 
  • 提供健壯的安全功能。随着開發人員不斷擴大對 FaaS 平台的運用範圍,確定相關人員能夠以安全的方式通路被封裝到虛拟私有網絡,或虛拟私有雲 (VPC) 中的資料和應用程式接口 (API) 就變得非常重要。另外在函數擴縮容的同時,相關人員還需要能夠快速接入這些資源,而無需等待耗時的“冷啟動”。 
  • 支援第三方生态系統和開放标準。除非您願意完全依賴一家公有雲提供商,否則您就應選擇平台內建更為便利的 FaaS 提供商。您需要關注的功能包括第三方可觀測性、事件綁定和消息協定等。 

評估摘要 

本次 Forrester Wave™ 評估報告将待評估對象分别歸入“上司者”(Leaders)、“強勁表現者”(Strong Performers)、“競争者”(Contenders) 和“挑戰者”(Challengers) 這幾個象限。這是對市場頭部廠商的評估,并不代表市場的整體情況。您可以檢視我們關于無伺服器架構 (Serverless) 技術的報告,擷取有關這個市場的更多資訊。我們希望這份評估報告隻是一個起點,建議客戶使用基于 Excel 的廠商比較工具來檢視産品評估并調整标準權重(請參見圖 1 和圖 2)。點選 Forrester.com 上網頁版報告開頭的連結即可下載下傳上述工具。 

如何評估Serverless服務能力,這份報告給出了40條标準

圖 1 《Forrester Wave™:函數即服務 (FaaS) 平台,2021年第一季度》評估結果  

* 灰色圓圈表示未參與 Forrester 評估的廠商 

如何評估Serverless服務能力,這份報告給出了40條标準

圖 2 《Forrester Wave™:函數即服務 (FaaS) 平台,2021年第一季度》評分 

所有評分采用 0(弱)到 5(強)分制

* 表示未參與評估的廠商 

各廠商的産品

Forrester 此次共評估了 9 家廠商的産品:阿裡巴巴、亞馬遜、谷歌、華為、IBM、微軟、Nimbella、甲骨文和騰訊(見圖 3)。 

如何評估Serverless服務能力,這份報告給出了40條标準

圖 3 本次評估的廠商和産品 

廠商概況 

通過分析,我們發現各廠商有以下優勢和不足之處。 

上司者 

  • 亞馬遜在地域覆寫、生态系統廣度和執行穩定程度等評分項上處于領先。在 2020 年的 Forrester Wave™ 報告中,我們提到 Lambda 在地域可用性、客戶采用率、開發人員部署函數的體驗以及對生态系統的支援等方面均有出色表現。這些優勢也延續到 2021 年。除此之外,諸如對亞馬遜 Elastic File System (EFS) 的支援,運作符合 OCI 标準的容器的能力以及精确到 1 毫秒的計費粒度等功能讓 Lambda 在創新之路上不斷前進,讓更多類型的工作負載适用。對無伺服器架構安全性和特殊工作負載的強大支援讓 Lambda 在 2021 年依然保持着上司地位。亞馬遜認為 FaaS 工作負載的生命周期應該是短暫的,認可這一觀點的開發人員會發現,Lambda 為他們提供了一個強大的FaaS 平台。該平台正逐漸支援第三方工具和以容器為中心的部署過程。該平台還針對狀态管理、資料庫操作和 API 等細化功能提供獨特的服務。

參考客戶對 Amazon Web Services(亞馬遜雲計算服務,簡稱 AWS)Lambda 給予了很高的評價,認為該平台可提供一流的客戶支援,性能出色,并內建各種 AWS 服務和第三方服務。在與經驗豐富的業内人士保持緊密合作方面,該産品也得到了客戶的一緻贊賞。參考客戶認為該平台在可觀測性上還有改善空間,并期望其能為開發人員提供更多簡化的工具。AWS Lambda 最适合異步運作的臨時工作負載,包括內建其他 AWS 服務、物聯網、批處理、新 Web 應用以及事件驅動內建。 

  • 阿裡巴巴使用容器和開放标準來加速 Web 和内容工作負載。在 2020 年的報告中,我們将阿裡巴巴函數計算 (Function Compute) 描述成“一個強健的通用平台”。2021 年,我們發現該平台對容器以及開源項目和标準,包括 OpenTracing、OpenTelemetry、Grafana 和 Jaeger 的支援使其能力得到進一步提升。加上該平台為支援主流 Web 架構、以内容為中心的工作負載、1 毫秒計費粒度以及運作時方面的投入,我們這次将阿裡巴巴函數計算納入 FaaS 市場“上司者”象限。阿裡巴巴函數計算特别适合需要處理大量視訊的工作負載,并利用以容器為中心的模型來實作函數并發。對于有此類需求的客戶,該平台是上佳之選。 

參考客戶對阿裡巴巴函數計算在中國 ISV 生态系統中的事件內建能力贊賞有加,并對其在聖誕節和新年等節日期間加強客戶支援的做法給予了高度評價。在技術方面,客戶對于可以在幾分鐘内擴容到數萬個執行個體的能力深表滿意。參考客戶希望該平台能夠在遠端調試方面提供更好的程式設計語言支援,并改進對于 GPU 計算的支援。雖然該平台目前最适合在香港或中國大陸部署工作負載的公司,但它的國際覆寫面正在擴大,目前已支援 10 個地域,共有 21 個可用區。 

  • 微軟 Azure Functions 為進階計劃保留了重要的企業級功能。Azure Functions 的消費計劃支援多種程式設計語言和有狀态的持久函數 (Durable Function),但如果想要使用預留執行個體、對 Docker 容器的支援和強大的安全功能,開發人員就需要更新到進階的專用計劃,即 Azure App Service 計劃。持久函數提供有狀态的功能并支援和 Azure Event Hub 綁定,而 Azure Event Grid 可幫助開發人員建構事件驅動微服務。今年,微軟通過加大投入,改進了新使用者引導、為開發人員提供更多工具以及支援在本地計算機上進行開發和調試,在開發人員體驗這個标準上表現突出,得到了最高評分。

參考客戶高度認可 Azure Functions 與 Key Vault 等其他 Azure 服務相內建以實作機密存儲的能力,并特别提到其強大的内置可觀測性。Azure Functions 的性能和服務品質也讓客戶普遍感到滿意。但是,客戶如果要使用 VPC 服務和預留執行個體等重要的企業功能,就不得不選擇費用更高的進階服務計劃,這一點是客戶集中抱怨的地方。對于需要其他 Azure 服務或一個覆寫全球的 FaaS 平台的客戶而言,Azure Functions 是最合适的解決方案。但如果您的團隊想建構或內建企業級工作負載,就需要更新到進階版的應用服務計劃。 

強勁表現者 

  • 騰訊雲函數 (SCF) 平台優化了以雲為中心的開發。騰訊打造了一套出色的基于 Web 的工具來進行函數開發,并将其與可靠的運作時相結合,支援多種程式設計語言、複雜的工作流程和運作時間更長的函數執行個體。開發人員可以預留函數執行個體,另外騰訊也為人工智能 (AI) 工作負載和特定的行業雲提供專業支援。SCF 還可作為微信生态系統的擴充機制,有效幫助各企業通過微信擴充功能與客戶進行互動。但對于希望進行本地函數開發和調試的開發人員來說,騰訊以雲為中心的開發理念與他們契合度不高。

參考客戶對于 SCF 的性能,客戶支援和工作負載執行低成本給予了高度評價。客戶同時表達了對該平台穩定性的擔憂,并希望通過更多内置事件觸發器來使用更多來自騰訊和第三方的雲服務。對于需要在中國部署 FaaS 服務、與微信進行內建和擴充以吸引更多客戶并接受以雲為中心的開發方法的客戶來說,騰訊 SCF 是一個不錯的選擇。 

  • Nimbella 通過“FaaS 無處不在”的方法全面支援混合雲。與 IBM Cloud Functions 一樣,Nimbella 基于開源 Apache OpenWhisk 項目。Nimbella 擁有一個簡單快速的開發人員入門流程,同時它的運作時既可以在純 FaaS 模型下使用,也可以作為可安裝的函數平台部署到其他公有雲上,更可以本地部署。Nimbella 通過強大的容器支援、允許使用多種程式設計語言以及可配置的函數最大運作時間設定來實作“FaaS 無處不在”。這樣的一款 FaaS 解決方案非常适合需要長期運作的有狀态函數。該平台盡管具有很高的靈活性,但有些問題仍需注意。它的托管解決方案為租戶提供了内置隔離功能,而可安裝的解決方案則支援混合部署,團隊可根據不同的組織需求和安全政策做出具體調整。是以,選擇混合部署的團隊可能要花費更多的時間來配置生産環境的基礎設施。

參考客戶對 Nimbella 在客戶支援和幫助實施最佳實踐方面的表現給予了高度評價。客戶還将最小化廠商鎖定風險作為選擇 Nimbella 的一個原因。客戶關心的問題包括安全性和可觀測性,同時希望通過增加代碼示例和數字内容來加快上手速度。對于采用混合 FaaS 解決方案,并希望在無伺服器架構平台基礎上提供自己的網絡和內建功能的開發團隊而言,Nimbella 是一個很合适的解決方案。另外如果相比基于用量的定價模式,您更想按月付費或選擇企業協定,Nimbella 的許可模式也是最有吸引力的方案。 

  • 谷歌以 Cloud Functions 和 Cloud Run 打造“全方位”解決方案。從谷歌的 FaaS 産品可以看出,随着公有雲提供商将容器和 Kubernetes 平台作為 FaaS 運作時的關鍵平台引擎,多個 FaaS 平台開始邁向轉型。谷歌的 Cloud Functions 支援常見的函數打包和部署,其運作時可以很好地擴充和緩慢冷卻,并且谷歌 Cloud Ops 內建功能也確定了出色的可觀測性。利用谷歌 Cloud Run,開發人員可以将函數與谷歌的 Functions Framework 打包在一起,使用 Knative 進行部署,并在混合部署場景中運作。與 2020 年的評估結果相比,該平台對程式設計語言的支援也有所加強。 

參考客戶在性能和簡易性方面為谷歌給出了很高的評分,并稱贊了 Cloud Functions 的安全性和可擴充性。此外,産品管理和客戶支援團隊的直接參與和支援也得到了客戶的一緻認可。有待改進的地方包括:更好地支援将第三方庫與函數打包(比方說用于處理 Kafka 消息),以及 Cloud Functions 運作時的依賴項的透明度需要加強。如果您想在全球範圍内部署應用,并在混合 FaaS 部署場景中從函數平穩過渡到容器,谷歌 Cloud Run 應該是您的合适選擇。 

  • IBM 完善了 Cloud Functions 并準備推出 Code Engine。IBM Cloud Functions 基于開源 Apache OpenWhisk 項目。它添加了内置的 API 網關,良好的事件流支援以及強大的容器級函數隔離等功能。從本次評估結果來看,IBM 在服務等級協定條款和可用性上優于其他任何一家廠商。但 Cloud Functions 在某些方面仍有待改善,比如網絡隔離選項有限以及對預留函數執行個體的支援等。在 2020 年的評估中,我們曾指出 IBM 在收購紅帽 (Red Hat) 之後,需要建立一套統一的函數運作時政策。IBM Cloud Code Engine 似乎将承擔這一任務。雖然尚未進入一般可用 (GA) 階段(是以沒有包含在我們的分析中),但 Code Engine 已經将對 Kubernetes 和 Knative 的支援加入 IBM 的 FaaS 政策。

IBM 的函數執行個體快速自動伸縮和計算型工作負載的高度并發獲得了參考客戶的一緻認可。其他客戶指出對 OpenWhisk 的支援實作了可移植性,進而降低了廠商鎖定的風險。需要改進之處包括完善編排、可觀測性以及對預留函數執行個體的支援。IBM 老客戶會發現 Cloud Functions 非常适合內建他們的工作負載,而它對多種程式設計語言的廣泛支援也能有效幫助大多數開發人員順利轉向無伺服器架構。進入 GA 階段後的 IBM Cloud Code Engine 也值得期待,尤其是對于正在投資基于 Kubernetes 的基礎架構,并希望将函數納入打包對象的客戶而言。 

競争者 

  • 甲骨文将安全性、容器和事件驅動內建放在首位。我們在 2020 年分析甲骨文 Cloud Functions 時,認為該平台相對較新,評估結果也展現了這一點。2021 年,甲骨文的這個 FaaS 平台已從“挑戰者”象限更新到“競争者”象限。甲骨文 Cloud Functions 基于開源 Fn 項目,函數被打包成 OCI 容器。甲骨文在建立這個 FaaS 平台時,主要側重“設計安全”(secure-by-design) 模式,這一做法也符合許多企業開發團隊的需求。預設情況下,函數執行個體僅在客戶虛拟雲網絡的子網内可用。與其他一些 FaaS 廠商不同,甲骨文的私有雲支援功能不收取額外費用。是以,甲骨文在北美、歐洲、亞洲和拉丁美洲的采用率都在穩步提升。

參考客戶對甲骨文 Cloud Functions 的性能、易用性、開發時間、文檔深度和總體執行成本給出了很高的評分。不足之處展現在需要拿出替代方案來解決偶爾出現的延遲問題,其可能原因是目前缺乏對預留執行個體的支援。甲骨文 Cloud Functions 非常适合使用其他 OCI 服務的企業。另外該平台目前已開放 23 個地域,可幫助客戶在全球範圍内實施部署。 

挑戰者  

  • 華為的函數工作流 (FunctionGraph) 雖然剛剛進入市場,但卻有相當不錯的前景。函數工作流平台還處在逐漸發展的階段,但我們在評估過程中發現,該平台憑借對開發工具、本地開發和事件驅動內建的有力支援,已達到市場平均水準。該平台可執行最長運作時間達 15 分鐘的函數,并支援 Node.js、Java、Python、Go,C# 和 PHP 等多種程式設計語言。作為市場上的一個新面孔,這個平台還存在一些不足。比如,文檔尚不完善、對特殊工作負載的支援較差、對內建的支援不夠。部分地區内的可用性也有限。是以,我們認為華為的函數工作流平台最适合想要在中國,或者巴西、智利、墨西哥、新加坡、南非或泰國等華為雲提供區域支援的國際市場上部署工作負載的開發人員。華為拒絕參與完整的 Forrester Wave™ 評估流程。

評估報告概述

我們嚴格依照 40 條标準對廠商進行了評估,這些标準可劃分成三大類: 

  • 目前産品。每個廠商在 Forrester Wave™ 象限圖縱軸上的位置代表其目前産品功能的表現。評估這些解決方案的關鍵标準包括開發人員的體驗、程式設計模型、運作時執行環境和安全功能。
  • 戰略願景。橫軸上的位置表示廠商在戰略上的表現。我們評估了 FaaS 平台提供商的願景、執行能力、生态系統、參與度和定價政策。
  • 市場占有率。通過圖上圓圈的大小來表示。我們的市場表現評分展現的是每個廠商的地理分布、客戶群規模和産品收入。 

廠商入選标準  

Forrester 本次共評估 9 家廠商:阿裡巴巴、亞馬遜、谷歌、華為、IBM、微軟、Nimbella、甲骨文和騰訊。他們均符合以下條件: 

  • 擁有 FaaS 平台。每家廠商都有一個客戶可以随時使用并運作生産性工作負載的 FaaS 平台。
  • 曾參與 Forrester 的 Now Tech 無伺服器架構提供商評估。FaaS 平台是通過無伺服器的架構來打造雲原生應用的關鍵組成部分。我們在 Forrester 的《Now Tech:無伺服器架構,2021 年第一季度》報告中詳細介紹了開發人員可以選擇的無伺服器架構。

補充材料  

線上資源 

我們将所有 Forrester Wave™ 評分和權重整理成一份 Excel 檔案,包含詳細的産品評估并支援自定義排序。點選 Forrester.com 上網頁版報告開頭的連結即可下載下傳該檔案。我們希望這些分數和預設權重僅是一個切入點,建議讀者根據個人需要來調整權重。 

Forrester Wave™ 的評估方法  

Forrester Wave™ 報告為組織在技術市場上購買産品提供了指南。為確定對所有參與者的公平,Forrester 遵循“Forrester Wave™ 方法指南”來評估參與的廠商。在該評估過程中,我們先進行初步研究,挑選出供之後評測的廠商。然後依據入選标準,進一步篩選并确定最後名單。接着通過詳細的問卷調查、示範/簡報,以及參考客戶調查/采訪來收集有關産品和戰略的詳細資料。最後将這些資訊,結合分析師的行業經驗和專業知識,通過将一家廠商與參與評估的其他廠商進行對比的相對評分系統,來對廠商進行評分。我們在每份 Forrester Wave™ 報告的标題中都清楚地指明該 Forrester Wave™ 的釋出日期(年份和季度)。在本次 Forrester Wave™ 報告的評估過程中,我們采用了廠商在 2021 年 1 月 21 日之前提供給我們的材料,不接受這個日期之後提供的其他資訊。我們希望讀者能去分析随時間變化,市場和廠商産品出現了怎樣的變化。根據“Forrester Wave™ 和 New Wave™ 廠商稽核政策”,Forrester 要求廠商在報告釋出之前稽核我們的評估結果,以確定準确性。在 Forrester Wave™ 象限圖中被标記為未參與評估的廠商符合我們所定義的入選标準,但拒絕參與或僅部分參與本次評估。我們根據“Forrester Wave™ 和 Forrester New Wave™ 未參與和不完全參與廠商政策”,對這些廠商進行評分,并将他們與參與評估的其他廠商一起列入象限圖。 

誠信準則  

我們所有的研究,包括 Forrester Wave™ 評估,均遵循我們網站上釋出的“誠信準則”。 

報告原文連結:

https://reprints2.forrester.com/#/assets/2/1948/RES161673/report

掃碼檢視更多中間件技術幹貨和案例:

如何評估Serverless服務能力,這份報告給出了40條标準