AWS 無服務器計算服務支持在 AWS 云上構建和部署應用程序,而無需管理服務器。AWS 無服務器平臺使供應商能夠部署云解決方案,而無需預置、部署、維護和監控應用程序、數據庫或存儲服務器。它包含自定義配置,易于維護,強大的安全性,可擴展性,高可用性,監控等功能。
什么是無服務器平臺?
無服務器并不意味著在沒有服務器的情況下執行應用程序。它是云提供商遵循的模型,其中提供商在自己的基礎架構上管理機器和資源,并通過動態分配機器和資源來提供服務,以構建和運行應用程序和服務,這被稱為“BaaS”(業務即服務)或“FaaS”(功能即服務),其中代碼在短暫的容器中執行。定價基于執行任務期間消耗的資源。
AWS 無服務器平臺的功能
云邏輯層
AWS Lambda 可以充當所有容器化和微服務應用程序的邏輯層
編排管理
使用 AWS Step 函數協調和管理無服務器應用程序的每個分布式組件的狀態
應用生命周期管理
使用生命周期管理工具(如 AWS 代碼管道)持續交付無服務器應用程序
安全和訪問控制
使用 AWS IAM(身份和訪問管理)和亞馬遜 VPC(虛擬私有云)保護整個環境和 AWS 資源
可靠性和性能
AWS 以更低的成本提供高度可用、可擴展且安全的服務
全球規模和覆蓋范圍
AWS 提供了廣泛的全球產品;大多數無服務器服務都在多個 AWS 區域中可用
無服務器應用程序使用案例
網絡應用程序
構建無服務器 Web 應用程序,這些應用程序可自動擴展和縮減,并在多個可用 AWS 區域中以高可用性配置運行,無需使用 Amazon S3、Amazon API 網關、AWS Lambda 和 Amazon DynamoDB 進行可擴展性所需的基礎設施工作。
實時文件處理
在亞馬遜 S3 中上傳數據后,S3 能夠觸發 AWS Lambda 即時處理數據。AWS Lambda 可用于生成縮略圖、轉碼視頻、索引文件、處理日志、驗證內容、實時聚合和篩選數據。
實時流處理
可以通過動態感應和 Aws Lambda 在 AWS 中處理實時流數據。流數據源包括應用程序活動跟蹤、數據清理、日志篩選、索引、社交媒體分析、正在處理的事務以及 IoT 設備數據遙測和計量。
移動后端
構建后端以通過 AWS Lambda 和亞馬遜 API 網關對 API 請求進行身份驗證和處理。
好處
降低成本 – 無服務器計算定價模型是即用即付。它消耗的資源,當應用程序不運行時,它什么都不會花費。此外,AWS 還負責基礎設施維護和更新,因此開發人員可以將更多時間花在軟件開發上。
彈性可擴展性 — AWS 中的無服務器架構有可能根據應用程序工作負載進行擴展和縮減。
減輕了開發人員的責任并加快了發布速度 — 開發人員無需擔心資源分配、擴展、應用程序部署和工作負載強度。AWS 可針對無服務器架構處理這些問題。開發人員只需編譯代碼,壓縮代碼,然后將其上傳到新的無服務器平臺以部署新功能。
多語言支持 — AWS 無服務器平臺支持多種編程語言,如 Node、Java、Python、C#、Ruby、Go 等,因此開發人員可以為自己選擇最方便的選項。
內置日志記錄和監控機制 — AWS 開發了自己的用戶日志記錄和監控解決方案。此外,它還提供自動化安全評估,可提高 AWS 上部署的應用程序的合規性。
挑戰
冷啟動 — 無服務器計算的主要好處是資源的動態分配,因此供應商不需要為空閑時間付費。但是,有時這可能會導致調用延遲。
資源限制 — 無服務器計算對資源內存、執行時間、帶寬和 CPU 使用率施加了限制,例如,對于 AWS Lambda,每個請求的最長執行時間為 900 秒(或 15 分鐘)。
應用程序測試不足 — 無服務器基礎結構支持獨立測試應用程序的小型功能,但測試基礎結構和所有功能的組合可能具有挑戰性。
增加的安全問題 — 如果 lambda 函數上發生任何惡意代碼或攻擊,用于識別問題和瓶頸的選項有限。開發人員也無法完全訪問 AWS 服務器。
訪問文件系統級別 — 對于需要訪問文件系統或操作系統級別的軟件,無服務器體系結構不是最佳選擇。這些類型的應用程序需要執行一些操作,例如從配置文件讀取屬性或將內存中緩存拆分到磁盤,但無服務器函數不允許這樣做。無服務器函數是無狀態的,因此每當應用程序需要狀態時,無服務器函數都不適合。
無服務器服務使應用程序更易于擴展和更快地開發,而無需管理典型的基于服務器的基礎結構。開發人員可以更多地關注核心產品,而不是操作服務器。因此,越來越多的組織更喜歡無服務器平臺。
審核編輯:郭婷
-
服務器
+關注
關注
12文章
9021瀏覽量
85184 -
AWS
+關注
關注
0文章
427瀏覽量
24314
發布評論請先 登錄
相關推薦
評論