什麼是 AWS Lambda? - AWS Lambda

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

什麼是 AWS Lambda?

您可以使用 AWS Lambda 在不佈建或管理伺服器的情況下執行程式碼。

Lambda 在高可用性的運算基礎設施上執行您的程式碼,並執行所有運算資源的管理,包括伺服器與作業系統維護、容量佈建與自動擴展以及記錄。使用 Lambda,您唯一需要做的就是在 Lambda 支援的其中一種語言執行期中提供您的程式碼。

您可以將您的程式碼組織為 Lambda 函數。Lambda 服務只有在需要時才會執行您的函數,並會自動擴展。只需為使用的運算時間支付費用,一旦未執行程式碼,就會停止計費。如需詳細資訊,請參閱 AWS Lambda 定價

提示

若要了解如何建置無伺服器解決方案,請參閱無伺服器開發人員指南

使用 Lambda 的時機

Lambda 是理想的運算服務,適用於需要快速縱向擴展的應用程式案例,並在不需要時縮減規模至零。例如,您可將 Lambda 用於:

  • 檔案處理:使用 Amazon Simple Storage Service (Amazon S3),在上傳之後即時觸發 Lambda 資料處理程序。

  • 串流處理:使用 Lambda 和 Amazon Kinesis 處理即時串流資料,以進行應用程式活動追蹤、交易訂單處理、點選流分析、資料清理、日誌篩選、索引編制、社交媒體分析、物聯網 (IoT) 裝置資料遙測以及計量。

  • Web 應用程式:將 Lambda 與其他 AWS 服務結合,以建置功能強大的 Web 應用程式,這些應用程式可自動擴展和縮減,並在多個資料中心的高可用性組態中

  • IoT 後端:使用 Lambda 建置無伺服器後端,以處理網路、行動裝置、IoT 和第三方請求。API

  • 行動後端:使用 Lambda 和 Amazon API 閘道建立後端,以驗證和處理API請求。使 AWS Amplify 用可輕鬆整合您的 iOS、安卓系統、網頁和反應原生前端。

使用 Lambda 時,您只需負責程式碼的相關操作。Lambda 會管理運算叢集,提供平衡的記憶體CPU、網路和其他資源來執行程式碼。由於 Lambda 管理這些資源,因此您無法登入運算執行個體或在提供的執行時間自訂作業系統。Lambda 會代表您執行操作和管理活動,包括管理容量、監控和記錄您的 Lambda 函數。

主要功能

下列主要功能協助您開發可擴展、安全且易於擴充的 Lambda 應用程式:

環境變數

使用環境變數來調整函數的行為,而無需更新程式碼。

版本

使用版本來管理函數部署,例如,可以使用新函數進行 Beta 測試,而不會影響穩定生產版本的使用者。

容器映像

使用 AWS 提供的基礎映像或替代基礎映像,為 Lambda 函數建立容器映像,以便重複使用現有的容器工具,或部署依賴相依性的大型工作負載,例如機器學習。

圖層

封裝程式庫和其他相依項可減少部署存檔的大小,並可更快地部署程式碼。

Lambda 延伸

使用監控、觀察、安全和管理工具來增強您的 Lambda 函數。

功能 URLs

將專用 HTTP (S) 端點新增至您的 Lambda 函數。

回應串流

將 Lambda 函數設定URLs為從 Node.js 函數將回應承載資料串流回用戶端,以縮短獲得第一個位元組 (TTFB) 效能的時間,或傳回較大的承載。

並行和擴展控制

對生產應用程式的擴展和回應能力進行精細控制。

程式碼簽署

確認只有核准的開發人員可在 Lambda 函數中發佈未修改、受信任的程式碼

私有網路

為資料庫、快取執行個體或內部服務等資源建立私有網路。

檔案系統存取

設定函數以將 Amazon Elastic File System (AmazonEFS) 掛載到本機目錄,以便您的函數程式碼可以安全且高度並行存取和修改共用資源。

爪哇 SnapStart 的 Lambda

Java 執行期的啟動效能提升最高 10 倍,無需額外費用,且通常不需要變更函數程式碼。