serverless 開源框架對比
什么是Serverless computing
serverless computing = FaaS (Function as a Service) + BaaS (Backend as a Service)
serverless是云原生應用的業務需求,是云計算形態的進一步發展,是云計算的下一代計算范式,Everything is Serverless
無服務器和傳統云計算之間的三個基本區別是:
解耦計算和存儲;它們分別縮放并獨立定價, 通常存儲由獨立服務提供,計算是無狀態的
執行一段代碼而不是分配執行代碼的資源的抽象。用戶提供一段代碼,云端自動配置資源來執行代碼(NoOPS,傳統云計算是devops)
支付代碼執行費用(Pay as you Run, 傳統云計算是Pay as You Use),而不是支付為執行代碼分配的資源。比如按執行時間計費,而不是按分配的虛機大小數量計費
Serverless 典型產品
函數服務主要開源項目
開源項目對比
ServerLess 框架比較
使用場景
架構
以AWS為例
兩條支持異構硬件的路徑
Serverless 包含多種實例類型,不同的硬件使用不同的價格
提供商自動選擇基于語言的加速器和DSA(Domain Specific Architecture),比如GPU硬件用于CUDA代碼,TPU硬件用于TensorFlow代碼(對于python或者js等高級語言,軟硬件co-design提供language specific 處理器; 對于編譯型語言,編譯器應該建議使用何種硬件架構)
當前技術局限
挑戰
計算抽象(屏蔽計算資源,解決數據依賴)
系統使能(函數狀態的高速存儲,函數間高速信令,函數極速啟動)
安全性 (應用級隔離,分布式安全)
適應性 (異構硬件使能,微服務演進)
成本不可以預測: 需要提供成本預測能力
容易產生Vendor lock-in: 需要提供API標準規范,類似POSIX為操作系統做的事情,Google的Knative project在向這個方向努力
預測
Serverless將成為云時代默認的計算范式,基于Serverless的應用將激增, on-promises應用由于監管約束和數據治理規則將長期存在,但是隨著時間的推移會逐漸減少
https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf
https://winderresearch.com/a-comparison-of-serverless-frameworks-for-kubernetes-openfaas-openwhisk-fission-kubeless-and-more/
云計算
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。