函式即服務(FaaS)是一種無伺服器運算的架構,開發者可以在指定環境中,部屬程式碼而無需擔心底層的伺服器管理。FaaS 在保有彈性的情況下,擁有自動擴充能力,適用於處理短暫任務和異步工作。
使用FaaS對企業來說,不需要擔心伺服器是否能承受的問題,因為每次運算階段都是獨立的,雲端會為你的服務即時分配所需的資源,並在執行完成後自動進行資源回收。
某個媒體公司需要快速處理大量圖片並上傳至網站系統中,調整內容包含尺寸、格式、加水印以及裁切尺寸。
解決方案: 公司選擇使用 FaaS 架構來處理。他們在 AWS Lambda(一種流行的 FaaS 服務)上部署了多個函數用於圖像處理,並將運算結果儲存到S3 存儲桶。
觸發方法:每當有圖片上傳到指定的 S3 存儲桶時,就會觸發 Lambda 函數。Lambda 函數根據預定義的規則進行圖像處理,處理完畢後的圖像會被保存在另一個 S3 存儲桶中,隨後透過API自動更新到網站上。
這樣就完成了一個簡單且高效率的雲端服務了,是不是很棒!?
微服務架構是將應用程式拆解多個小服務的開發方法,每個服務都有自己的執行流程(亦可使用FaaS實現),並透過 API 進行通訊。它們彼此之間可獨立部署,且可用不同的語言、平台進行開發。
優點:
缺點:
無伺服器化架構又稱服務化架構,主張不需要管理任何硬體資源和底層系統,所有環境皆已為你準備就像是沒有伺服器一樣,無伺服器服務的供應商會自動處理硬體資源分配、維護和擴展。
優點:
缺點:
https://www.cloudflare.com/zh-tw/learning/serverless/glossary/serverless-vs-paas/
https://cloud.google.com/discover/types-of-cloud-computing