幾句話一張圖,了解Serverless
Serverless是什麼?
最酷的Serverless是指由雲服務商提供運行環境,用戶直接上傳代碼就可以運行業務需要的服務,又稱FaaS(Function as a Service)。
廣義的Serverless泛指不需要伺服器的雲服務,接近於BaaS(Backend as a service)。
Serverless怎麼運轉?
用戶的業務請求都匯總到一個接入點(API網關),根據規則交給對應的Serverless服務做業務處理,多個服務之間傳消息來協作(事件驅動)。這樣就輕鬆完成了一個業務流。至於數據存取,可以調用雲資料庫服務。
Serverless為啥會流行?
一句話,讓你專註在業務邏輯和代碼上。
你不用再關心運行服務所需的資源和環境了,服務商自動根據負載來啟動新進程,什麼伺服器、網路、操作系統、應用環境、內存、CPU、進程都說再見了,甚至是服務的彈性、並發擴展、高可用,基本都不用管了,而且可以按照函數調用次數和時長付費,想想都覺得很爽。
因此,Serverless有句口號叫做」用服務取代伺服器」。
那Serverless真的要幹掉伺服器?
不是,至少現階段不是。
首先,運行Serverless的環境肯定都還是伺服器,只是轉由服務商去管理維護了。其次,目前FaaS這類Serverless在許多方面有局限性,應用場景有限。但Serverless的技術發展和應用確實很快,未來如何,邊走邊看了。
Serverless的優缺點到底是什麼?
優點:降低運行成本、降低開發成本(BaaS)、降低擴展成本(FaaS)、簡化運維管理、更節能。
缺點:平台控制、平台鎖定、租戶隔離與安全、優化難、代碼邏輯重複,這些是固有問題。還有些是當前實現造成的問題:啟動時延、執行時長受限、配置性差、容易形成自我DOS攻擊、測試打包交付運維有較大模式轉變。
說了一大通,到底哪些Serverless服務我能用?
AWS的Lamda、IBM的OpenWhisk、阿里雲函數計算FunctionCompute、華為雲函數服務FunctionStage、騰訊雲無伺服器函數SCF等。
Serverless和微服務、容器什麼關係?
有聯繫。微服務架構中的部分服務可以按FaaS的方式運行,容器則是目前絕大多數FaaS服務的運行環境底層。
TAG:九品芝麻糖 |