Everything is Serverless,從開源框架對比說起

華為雲開發者社群發表於2021-03-11
摘要:Everything is Serverless。

在眾多雲端計算解決方案中,Serverless 逐漸嶄露頭角,受到了很多關注並且發展迅猛,今天就關於serverless 開源框架細說二三。

什麼是serverless computing

  • serverless computing = FaaS (Function as a Service) + BaaS (Backedn as a Service)
  • serverless是雲原生應用的業務需求,是雲端計算形態的進一步發展,是雲端計算的下一代計算正規化,Everything is Serverless

無伺服器和傳統雲端計算之間的三個基本區別是:

  • 解耦計算和儲存;它們分別縮放並獨立定價, 通常儲存由獨立服務提供,計算是無狀態的
  • 執行一段程式碼而不是分配執行程式碼的資源的抽象。使用者提供一段程式碼,雲端自動配置資源來執行程式碼(NoOPS,傳統雲端計算是devops)
  • 支付程式碼執行費用(Pay as you Run, 傳統雲端計算是Pay as You Use),而不是支付為執行程式碼分配的資源。比如按執行時間計費,而不是按分配的虛機大小數量計費

Serverless 典型產品

Everything is Serverless,從開源框架對比說起

函式服務主要開源專案

Everything is Serverless,從開源框架對比說起

開源專案對比

ServerLess 框架比較

Everything is Serverless,從開源框架對比說起

使用場景

Everything is Serverless,從開源框架對比說起

架構

以AWS為例

Everything is Serverless,從開源框架對比說起

兩條支援異構硬體的路徑

  • Serverless 包含多種例項型別,不同的硬體使用不同的價格
  • 提供商自動選擇基於語言的加速器和DSA(Domain Specific Architecture),比如GPU硬體用於CUDA程式碼,TPU硬體用於TensorFlow程式碼(對於python或者js等高階語言,軟硬體co-design提供language specific 處理器; 對於編譯型語言,編譯器應該建議使用何種硬體架構)

當前技術侷限

Everything is Serverless,從開源框架對比說起

挑戰

  • 計算抽象(遮蔽計算資源,解決資料依賴)
  • 系統使能(函式狀態的高速儲存,函式間高速信令,函式極速啟動)
  • 安全性 (應用級隔離,分散式安全)
  • 適應性 (異構硬體使能,微服務演進)
  • 成本不可以預測: 需要提供成本預測能力
  • 容易產生Vendor lock-in: 需要提供API標準規範,類似POSIX為作業系統做的事情,Google的Knative project在向這個方向努力

預測

Serverless將成為雲時代預設的計算正規化,基於Serverless的應用將激增, on-promises應用由於監管約束和資料治理規則將長期存在,但是隨著時間的推移會逐漸減少

本文分享自華為雲社群《serverless 開源框架對比》,原文作者:Leo Xiao。

 

點選關注,第一時間瞭解華為雲新鮮技術~

相關文章