避免 IT 資源浪費的最佳利器-無伺服器服務
相對於地端和私有雲,公有雲在建構、部署企業應用服務及管理雲端伺服器變得相對簡單。雖然公有雲能使企業免除購買硬體、建置機房困擾,不過平時維運的工作還是無可避免,例如:保持架構彈性及可靠性、需要向這些伺服器進行更新和部署、面對服務流量尖峰時運算量的評估以避免浪費等,根據統計,85%的伺服器運算量使用不完全。
「無伺服器服務(Serverless)」使企業無需管理伺服器即可建構和運行應用程式,且依照使用的次數及數量來計價,使企業節省整體IT資源。本期電子報,博弘將為您整理在 AWS 上的無伺服器服務,以及告訴您採用無伺服器服務會獲得哪些好處。
什麼是無伺服器服務?
無伺服器應用是一種公有雲原生的服務,由雲端服務供應商負責透過動態分配資源來執行一段程式碼,該程式碼通常在無狀態容器中運行,可以由各種事件觸發此容器。無伺服器有時也被稱為,功能即服務(Function as a Service, FaaS)。
採用無伺服器服務對於企業的四大好處
無伺服器服務相較於傳統伺服器的應用程式設計,具有許多優點:
- 免管理:無需配置、部署、更新、監控或以其他方式管理伺服器,所有實際的硬體和伺服器軟體均由雲端服務供應商處理。
- 自動調節用量:不同與傳統伺服器需管理伺服器底層,無伺服器服務會根據其實際使用情況自動擴展或縮減容量。
- 高可用性:除了自動擴展功能外,還內建高可用性和自動容錯功能,無需額外撰寫程式碼就可以直接獲得這些好處。
- 成本優化:前期無須預付費用,可依照使用量或運行時花費的時間計費。
在 AWS 上常見的無伺服器服務
下方表格博弘根據不同服務種類,包含運算、資料庫、儲存、API 串接、數據分析、應用程式整合、協調以及開發者工具,為您整理出 AWS 上常見的無伺服器服務:
項目 | 服務 |
運算 | AWS Lambda、AWS Fargate |
資料庫 | RDS、Amazon Aurora、Amazon Dynamo DB |
儲存 | S3、EFS |
API 串接 | API Gateway |
分析 | Amazon Kinesis、Amazon Athena |
應用程式整合 | SNS、SQS、EventBridge、AppSync |
協調 | Step function |
開發人員工具 | CodeBuild、CodeDeploy、CodePipeline、AWS Lambda |
無伺服器服務的七大應用
- 應用程式及網站:無伺服器服務可自動擴展,幫助網站即時處理大量湧入的流量。
- 行動應用程式後端:無伺服器的行動應用程式後端為用戶端的開發人員提供可以輕鬆建立安全、高可用性和彈性縮放後端的方法,AWS 直接為您處理分散式系統設計。
- 媒體和日誌處理:無伺服器方法提供平行處理的特性,使複雜的運算工作負載變簡單,而無需構建多排程系統或手動擴展運算伺服器,簡化流程。
- IT 自動化:無伺服器功能可以附加告警和監控服務,並加入客製化功能,這讓 Cron job 和其他 IT 基礎架構要求的工作變得更簡單。
- IoT 後端:自動代入程式碼的功能,簡化建立特定裝置演算法的過程。
- 聊天機器人(語音助理):無伺服器服務相當適合聊天機器人應用,用戶從聊天機器人詢問問題時才運行程式碼。例如,大多數 Amazon Echo 的 Alexa 技能都是透過 AWS Lambda 所運行的。
- 即時數據處理:無伺服器解決方案提供了隨著資料流程擴展與縮小的靈活性,使它們能夠滿足流量要求,而無需為每個應用程式額外構建可擴展的系統。
以下為社群媒體應用程式後端範例:
紐約女性新聞網站Bustle透過AWS Lambda無伺服器架構後,省下管理基礎架構的人力,並節省下約84% 成本。
(圖片來源:https://aws.amazon.com/tw/serverless/)
如何評估企業是否適合採用無伺服器服務?
前面介紹了那麼多的無伺服器應用情境及好處,那企業該如何評估是否適合使用呢?博弘幫您整理出幾個不適合的情況,幫助您做判斷:
- 當您的應用服務功能性很明確,且盡量避免修改架構。
- 需要對環境進行顆粒度控制時,例如指定特定的作業系統修補程式或存取低階網路作業,使程式碼正常運行。
- 地端應用程式尚未搬遷至公有雲上。
若無以上情況,您就可以嘗試 AWS 無伺服器應用,享受它所帶來的好處!
在看完本篇文章之後,您是否也有使用AWS 無伺服器服務的需求,立即聯絡我們吧,將有專業架構師為您服務!
博弘雲端 Nextlink 快訊
- 最新消息:博弘雲端遷移研討會為企業帶來轉型應變力(閱讀更多)
- 架構師專欄:如何在創建新 CloudFormation Stack 時存取其他已建立的 CloudFormation Stack 內的資源?(閱讀更多)
- 架構師專欄:如何使用 AWS KMS 加密 Amazon S3 中的特定文件夾(閱讀更多)