Lambda 範例應用程式 - AWS Lambda

Lambda 範例應用程式

本指南的 GitHub 儲存庫包含示範各種語言和 AWS 服務使用方式的範例應用程式。每個範例應用程式都包含可輕鬆部署和清理的指令碼、AWS SAM 範本和支援資源。

Node.js

以 Node.js 編寫的範例 Lambda 應用程式

  • blank-nodejs - 一個 Node.js 函數,它示範如何使用記錄、環境變數、AWS X-Ray 追蹤、層、單元測試以及 AWS 開發套件。

  • nodejs-apig - 具有公有 API 端點的函數,它會處理來自 API Gateway 的事件並傳回 HTTP 回應。

  • rds-mysql - 可將查詢轉送至 MySQL for RDS 資料庫的函數。此範例包括已在 AWS Secrets Manager 中設定密碼的私有 VPC 和資料庫執行個體。

  • efs-nodejs - 在 Amazon VPC 中使用 Amazon EFS 檔案系統的函數。此範例包含設為與 Lambda 搭配使用的 VPC、檔案系統、掛載目標以及存取點。

  • list-manager - 可處理來自 Amazon Kinesis 資料串流的事件並更新 Amazon DynamoDB 中的彙總清單的函數。函數會針對 RDS 資料庫的 MySQL 中的每個事件在私有 VPC 中存放一筆記錄。此範例包括具有 DynamoDB 適用之 VPC 端點的私有 VPC 和資料庫執行個體。

  • error-processor - 一種 Node.js 函數,可針對指定的請求百分比產生錯誤。記錄錯誤時,CloudWatch Logs 訂閱會叫用第二個函數。處理器函數使用 AWS 開發套件收集有關請求的詳細資訊,並將它們存放在 Amazon S3 儲存貯體中。

Python

以 Python 編寫的範例 Lambda 應用程式

  • blank-python - 一種 Python 函數,它示範如何使用記錄、環境變數、AWS X-Ray 追蹤、層、單元測試和 AWS 開發套件。

Ruby

以 Ruby 編寫的範例 Lambda 應用程式

  • blank-ruby - 一種 Ruby 函數,它示範如何使用記錄、環境變數、AWS X-Ray 追蹤、層、單元測試和 AWS 開發套件。

  • AWS Lambda 的 Ruby 程式碼範例 - 以 Ruby 編寫的程式碼範例,示範如何與 AWS Lambda 進行互動。

Java

以 Java 編寫的範例 Lambda 應用程式

  • blank-java - 一種 Java 函數,它示範如何使用 Lambda 的 Java 程式庫、記錄、環境變數、層、AWS X-Ray 追蹤、單元測試和 AWS 開發套件。

  • java-basic - 具有單元測試和變數日誌記錄組態的最小 Java 函數。

  • java-events - 使用 aws-lambda-java-events 程式庫最新版本 (3.0.0 及更新版本) 的最小 Java 函數。這些範例不需要 AWS 開發套件做為相依項目。

  • s3-java - 一種 Java 函數,它處理來自 Amazon S3 的通知事件,並使用 Java Class Library (JCL) 以從上傳的映像檔案建立縮圖。

Go

Lambda 為 Go 執行時間提供下列範例應用程式:

以 Go 編寫的範例 Lambda 應用程式

  • blank-go - 一種 Go 函數,它示範如何使用 Lambda 的 Go 程式庫、記錄、環境變數和 AWS 開發套件。

C#

以 C# 編寫的範例 Lambda 應用程式

  • blank-csharp - 一種 C# 函數,它示範如何使用 Lambda 的 .NET 程式庫、記錄、環境變數、AWS X-Ray 追蹤、單元測試和 AWS 開發套件。

  • ec2-spot – 在 Amazon EC2 中管理 Spot 執行個體請求的函數。

PowerShell

Lambda 提供下列適用於 PowerShell 執行時間的範例應用程式:

  • blank-powershell - 一種 PowerShell 函數,它示範如何使用日誌記錄、環境變數和 AWS 開發套件。

若要部署範例應用程式,請依照其 README 檔案中的指示。若要進一步了解應用程式架構和使用案例,請閱讀本章各主題。