開放原始碼儲存庫 - AWS Lambda

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

開放原始碼儲存庫

AWS Lambda 提供各種開放原始碼工具、程式庫和元件,協助您建置、自訂和最佳化無伺服器應用程式。這些資源包括執行時間界面用戶端、事件程式庫、容器基礎映像、開發工具,以及 GitHub 上維護 AWS 和可用的範例專案。透過利用這些開放原始碼儲存庫,您可以擴展 Lambda 的功能、建立自訂執行時間、處理來自各種 AWS 服務的事件,以及深入了解函數的效能。此頁面提供支援 Lambda 開發之金鑰開放原始碼專案的概觀。

執行時間界面用戶端

Lambda 執行期介面用戶端 (RICs) 是開放原始碼程式庫,可實作執行期 API 並管理函數程式碼與 Lambda 服務之間的互動。這些用戶端會處理接收呼叫事件、傳遞內容資訊和報告錯誤。

Lambda 受管執行期和容器基礎映像所使用的執行期界面用戶端會發佈為開放原始碼。當您建置自訂執行時間或擴展現有的執行時間時,您可以使用這些開放原始碼程式庫來簡化實作。下列開放原始碼 GitHub 儲存庫包含 Lambda RICs的原始程式碼:

如需使用這些用戶端建置自訂執行期的詳細資訊,請參閱 建置 的自訂執行期 AWS Lambda

事件程式庫

Lambda 事件程式庫提供類型定義和協助程式公用程式,用於處理來自各種 AWS 服務的事件。這些程式庫可協助您以安全類型的方式剖析和處理事件資料,讓您更輕鬆地處理來自 Amazon S3、Amazon DynamoDB 和 Amazon API Gateway 等服務的事件。

對於編譯的語言, AWS 提供下列事件程式庫:

對於 Node.js、Python 和 Ruby 等解譯語言,事件可以直接剖析為 JSON 物件,而不需要單獨的程式庫。不過,使用 Node.js 和 Python 的開發人員可以利用 的 powertools AWS Lambda,為提供類型提示、資料驗證和功能 AWS 的事件提供內建結構描述,類似於編譯的語言程式庫所提供的功能。

容器基礎映像

AWS 提供開放原始碼容器基礎映像,您可以用作為 Lambda 函數建置容器映像的起點。這些基礎映像包括執行時間界面用戶端,以及在 Lambda 執行環境中執行函數所需的其他元件。

如需可用基礎映像及其使用方式的詳細資訊,請參閱 AWS Lambda 基礎映像儲存庫和 使用容器映像建立 Lambda 函數

開發工具

AWS 提供額外的開放原始碼開發工具,協助您建置和最佳化 Lambda 函數:

的 Powertools AWS Lambda

的 Powertools AWS Lambda 使用基本公用程式簡化無伺服器開發,以防止重複處理,以及多筆記錄處理和 Kafka 消費者程式庫的批次處理。這些功能可協助您將程式碼複雜性和操作開銷降至最低。

您也可以利用內建事件結構描述驗證、結構化記錄和追蹤,以及參數存放區整合,這些整合旨在加速建立生產就緒的 Lambda 函數,同時遵循 AWS 架構良好的最佳實務。

GitHub 儲存庫:

Java 開發工具

  • Java Profiler (實驗性) - 用於分析 Java Lambda 函數的工具。

  • Java 程式庫 - 包含用於 Lambda 開發的 Java 程式庫和工具完整集合的儲存庫,包括 JUnit 測試公用程式和分析工具等關鍵專案。

  • 無伺服器 Java 容器 - 可讓您在 Lambda 上執行現有 Java 應用程式的程式庫,且變更最少。

.NET 開發工具

AWS Lambda .NET 儲存庫提供 Lambda 開發的 .NET 程式庫和工具,包括 等關鍵專案,適用於 .NET CLI 和 .NET Core 伺服器用於託管 .NET Core 應用程式 AWS Lambda 的工具。

範例專案

探索 Serverless Land 儲存庫中 Lambda 專案和應用程式範例的完整集合。這些範例示範各種 Lambda 使用案例、整合模式和最佳實務,協助您開始使用無伺服器應用程式。