AWS Lambda 是一種無伺服器的運算服務,可讓您執行程式但不必佈建或管理伺服器、建立工作負載感知叢集擴展邏輯、維護事件整合或管理執行階段。使用 Lambda,您可以透過虛擬方式執行任何類型的應用程式或後端服務,全部無需管理。只要以 ZIP 檔案或容器映像上傳您的程式碼,Lambda 就可以自動並精準地分配運算執行力,並根據傳入請求或事件執行您的程式碼,適用於任何規模的流量。您可以將自己的程式碼設定成從 140 個 AWS 服務自動觸發,或從任何 Web 或行動應用程式直接呼叫。您可以用自己最喜愛的語言 (Node.js、Python、Go、Java 等) 寫入 Lambda 函式,而且可以使用 AWS SAM 或 Docker CLI 等無伺服器和容器工具建置、測試和部署您的函式。
優勢
不必管理伺服器
AWS Lambda 可以自動執行您的程式碼,而您無需佈建或管理基礎設施。只要寫入程式碼,然後以 ZIP 檔案或容器映像上傳到 Lambda 即可。
持續擴展
AWS Lambda 會透過執行程式碼來回應各個事件,從而自動擴展您的應用程式規模。您的程式碼會平行執行並個別處理各個觸發,根據工作負載的大小精確擴展,從一天幾個請求擴展到一秒數十萬個。
以毫秒計量來優化成本
使用 AWS Lambda,您只需為耗用的運算時間付費,不需要為過度佈建的基礎設施支付任何費用。收費標準分別是程式碼的執行時間 (按毫秒計),以及程式碼的觸發次數。使用 Compute Savings Plan,您還可額外節省多達 17% 的費用。
在任何規模皆能提供一致效能
藉助 AWS Lambda,您可以為函式選擇合適的記憶體大小,從而最佳化程式碼執行時間。您還可以啟用「佈建並行」功能,以讓函式保持初始化及 Hyper 就緒狀態,從而在兩位數毫秒時間內做出回應。
運作方式

使用案例
AWS Lambda 可以建置哪些內容? 進一步了解下列使用案例:
資料處理
您可以使用 AWS Lambda 執行程式碼以回應各個觸發,例如資料變更、系統狀態轉換,或使用者的動作。S3、DynamoDB、Kinesis、SNS 和 CloudWatch 等 AWS 服務可直接觸發 Lambda,可以連線至現有 EFS 檔案系統,或者由 AWS Step Functions 協調至工作流程。這可讓您建立各種即時無伺服器資料處理系統。
即時檔案處理
透過 Amazon S3,您可以觸發 AWS Lambda 在資料上傳後立即處理資料。此外還可以直接連線至現有的 Amazon EFS 檔案系統,能夠大量平行共用存取以進行大規模檔案處理。例如,您可以使用 Lambda 即時為影像建立縮圖、為影片轉碼、為檔案編製索引、處理記錄、驗證內容,以及彙總和篩選資料。
參考架構:範本程式碼


The Seattle Times 使用 AWS Lambda 調整影像大小,以便在不同裝置 (例如桌上型電腦、平板電腦和智慧型手機) 上檢視影像。閱讀案例研究 »
即時串流處理
您可使用 AWS Lambda 和 Amazon Kinesis 處理即時串流資料,以便追蹤應用程式活動、處理交易訂單、處理點擊串流、分析點擊串流、清理資料、產生指標、篩選記錄、編製索引,以及物聯網裝置遙測和量測。
參考架構:範本程式碼


Localytics 可以即時處理數十億筆的資料點,並使用 Lambda 處理 S3 中儲存的歷史資料和即時資料,或 Kinesis 以串流傳輸的資料。閱讀案例研究 »
機器學習
您可以使用 AWS Lambda 預處理資料,然後再將其提供給機器學習模型。通過 Lambda 對 EFS 的存取,您還可以為模型提供大規模預測服務,而無需佈建或管理任何基礎架構。

「在 Aible,我們致力於以最低的運營成本提供最強大的 AI 技術。因此,我們使用 AWS Lambda 和無伺服器進行機器學習訓練和預測。透過無伺服器,我們可以更經濟實惠地執行各種機器學習工作負載,同時受益於快速迭代所需的大量運算資源,並擴展以建立 AI 對業務產生最佳的影響。」
Aible 首席技術官 Rod Butters
後端
您可以使用 AWS Lambda 建置無伺服器後端,以處理 Web、行動、物聯網 (IoT) 及第三方 API 的要求。充分利用 Lambda 的一致性效能控制,如多個記憶體組態和佈建並行,來建置對延遲敏感的任意規模的應用程式。
Web 應用程式
將 AWS Lambda 與其他 AWS 服務結合後,開發人員可以建置強大的 Web 應用程式,這類應用程式不僅能夠在多個資料中心之間自行調整規模,還能在高可用性組態下執行,而對於擴充、備份或多資料中心備援作業,也不必花費心力管理。
參考架構:範本程式碼

IoT 後端
您可以使用 AWS Lambda 建置無伺服器後端,以處理 Web、行動、物聯網 (IoT) 及第三方 API 的要求。
參考架構:範本程式碼

行動後端
AWS Lambda 可讓使用者輕鬆建立內容豐富、具備個人特色的應用程式體驗。您可以使用 AWS Lambda 和 Amazon API Gateway 建置後端,以驗證和處理 API 要求。利用 AWS Amplify 輕鬆地將您的後端與 iOS、Android、Web 和 React Native 前端整合。
參考架構:範本程式碼


Bustle 使用 AWS Lambda 和 Amazon API Gateway,在其 Bustle iOS 應用程式和網站執行無伺服器後端。使用無伺服器架構之後,Bustle 無須處理基礎設施管理,因此每位工程師都能專注在建立新功能和創新。閱讀案例研究 »
案例研究
AWS Lambda 入門
進一步了解 AWS Lambda