AW-每個人的拉姆達 - AWS 解決方案建構

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

AW-每個人的拉姆達

所有類都在積極開發中,並且在任何未來版本中都會受到非向後兼容的更改或刪除。這些不受語義版本模型。這意味著,雖然您可以使用它們,但在升級到此軟件包的較新版本時,您可能需要更新源代碼。

請注意: 為了確保功能正確,專案中的 AWS 解決方案建構套件和 AWS CDK 套件必須是相同的版本。

語言 套件
Python
aws_solutions_constructs.aws_apigateway_lambda
打字稿
@aws-solutions-constructs/aws-apigateway-lambda
Java
software.amazon.awsconstructs.services.apigatewaylambda

Overview

此 AWS 解決方案建構實作連接到 AWS Lambda 函數的 Amazon API Gateway REST API。

下面是 TypeScript 中的最小可部署模式定義:

import { ApiGatewayToLambda } from '@aws-solutions-constructs/aws-apigateway-lambda'; new ApiGatewayToLambda(this, 'ApiGatewayToLambdaPattern', { lambdaFunctionProps: { runtime: lambda.Runtime.NODEJS_14_X, // This assumes a handler function in lib/lambda/index.js code: lambda.Code.fromAsset(`${__dirname}/lambda`), handler: 'index.handler' } });

Initializer

new ApiGatewayToLambda(scope: Construct, id: string, props: ApiGatewayToLambdaProps);

參數

模式建立道具

名稱 類型 描述
現在還有蘭姆達伯 lambda.Function Lambda 函數對象的現有實例,提供這個和lambdaFunctionProps會造成錯誤。
拉姆針灸道具? lambda.FunctionProps 選用的使用者提供的屬性,可覆寫 Lambda 函數的預設屬性。忽略existingLambdaObj提供。
阿比格特威道具? api.LambdaRestApiProps 可選的使用者提供的道具來覆寫 API 的預設道具。
記錄群組道具? logs.LogGroupProps 可選用的使用者提供的道具,用於覆寫 CloudWatch Logs 日誌群組的預設道具。

模式性質

名稱 類型 描述
雲端觀察角色 iam.Role 傳回模式所建立的 IAM 角色執行個體,該模式可啟用從 API Gateway REST API 存取記錄至 CloudWatch。
應用路徑記錄群組 logs.LogGroup 傳回傳送 API Gateway REST API 存取記錄檔的模式所建立之記錄群組的執行個體。
LambdaFunction lambda.Function 返回由模式創建的 Lambda 函數的實例。
AgeGateway api.LambdaRestApi 返回由模式創建的 API Gateway REST API 的實例。

預設定

此模式的開箱即用實現沒有任何覆蓋將設置以下默認值:

Amazon API Gateway

  • 部署邊緣最佳化的 API 端點

  • 啟用適用於 API Gateway 的 CloudWatch 日誌

  • 設定 API Gateway 的最低權限存取 IAM 角色

  • 將所有 API 方法的預設授權類型設定為 IAM

  • 啟用 X-Ray 追蹤

  • 設定環境變數:

    • AWS_NODEJS_CONNECTION_REUSE_ENABLED(對於節點 10.x 和更高版本的函數)

AWS Lambda 功能

  • 針對 Lambda 函數設定有限的權限存取 IAM 角色

  • 針對 NodeJS Lambda 函數啟用具有持續作用的重複使用連線

  • 啟用 X-Ray 追蹤

Architecture

GitHub

要查看此模式的代碼,創建/查看問題和提取請求,以及更多:
@aws-解決方案-構造/AW-每個人-lambda