Serverless介紹

Serverless介紹

Serverless 概念

Serverless 是指構建和運行不需要服務器管理的應用程序的概念, 可以理解為運行在 FaaS 中的,使用了 BaaS 的函數(shù)。

- BaaS(后端即服務:Backend as a Service)

后端云服務,比如云數(shù)據(jù)庫、對象存儲、消息隊列等。

- FaaS(Function as a Service)

一些運行函數(shù)的平臺,比如阿里云的函數(shù)計算、AWS 的 Lambda 等。

主要缺點

1. 不適合長時間運行應用

2. 完全會依賴于第三方服務

比如你使用 Lean Cloud 的數(shù)據(jù)存儲服務,如果你想要遷移到 Google Firebase 上去,那么他們的數(shù)據(jù)和編程模型可能完全不同,這其中的成本有可能是非常巨大的。這些是你需要考慮的一點。

因為服務端被托管給了供應商,無法自己去根據(jù)自己的需求對服務端進行優(yōu)化。

由于服務端本質(zhì)還是云計算的那套,供應商處于效用最大化原則,你的服務是有可能和其他人的服務公用一個實體資源的。那么可能會產(chǎn)生多租戶問題,不論是從安全性還是從性能的角度都要考慮清楚。

3. 無法用于高并發(fā)運用

為每個請求啟動一個進程開銷太高,流量瞬間爆發(fā)容易超時。比如淘寶的雙十一支付寶高峰期,每秒處理交易筆數(shù)8萬多筆,也就意味著我們的系統(tǒng)內(nèi)每秒有8萬多個進程創(chuàng)建又被銷毀。那么這樣就會造成系統(tǒng)開銷很大。解釋和第一點一樣的原理。

4. 安全問題

越多的調(diào)用第三方服務,就意味著向外暴露越多的風險點。另外,如果你的服務端完全依靠第三方的話,還有一個重要的問題是你失去了一層服務端的壁壘,很多需要在服務端攔截的內(nèi)容現(xiàn)在你無法做到了,而放在應用端做這些事情的風險是很大的

### Serverless 的主要特點有:

- 服務端的主機和進程完全由供應商管理

- 可以根據(jù)負載進行自動伸縮

- 按照精確的使用情況來計費,就像水和電一樣。(效用計算)

主流廠商

- 騰訊云

- 阿里云

- AWS

- 微軟

- 谷歌

- IBM

- 華為云

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容