翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
aws-ラムダ-sqs
すべてのクラスは積極的に開発されており、将来のバージョンでは下位互換性がない変更または削除の対象となります。これらは、セマンティックバージョン管理
注意: 正しく機能するためには、プロジェクト内の AWS ソリューション構築パッケージと AWS CDK パッケージが同じバージョンである必要があります。
| 言語 | パッケージ |
|---|---|
|
aws_solutions_constructs.aws_lambda_sqs
|
|
@aws-solutions-constructs/aws-lambda-sqs
|
|
software.amazon.awsconstructs.services.lambdasqs
|
Overview
この AWS ソリューション構成は、Amazon SQS キューに接続された AWS Lambda 関数を実装します。
TypeScript の最小限のデプロイ可能なパターン定義は次のとおりです。
import { LambdaToSqs, LambdaToSqsProps } from "@aws-solutions-constructs/aws-lambda-sqs"; new LambdaToSqs(this, 'LambdaToSqsPattern', { 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 LambdaToSqs(scope: Construct, id: string, props: LambdaToSqsProps);
パラメータ
-
scope
Construct -
id
string -
propsLambdaToSqsProps
パターン構成プロパティ
| 名前 | タイプ | 説明 |
|---|---|---|
| ExistingLambdaObj? |
lambda.Function
|
デフォルト関数の代わりに使用されるオプションの既存の Lambda 関数。これとlambdaFunctionPropsはエラーを発生させます。 |
| LambdaFunctionProps? |
lambda.FunctionProps
|
Lambda 関数のデフォルトプロパティを上書きするオプションのユーザー指定のプロパティ。 |
| ExistingQueueObj? |
sqs.Queue
|
デフォルトキューの代わりに使用されるオプションの既存の SQS キュー。これとqueuePropsはエラーを発生させます。 |
| QueueProp? |
sqs.QueueProps
|
SQS キューのデフォルトプロパティーを上書きするオプションのユーザー指定のプロパティーです。 |
| キューのパージを有効化しますか? |
boolean
|
SQS キューの削除を可能にする Lambda 関数に追加のアクセス許可を付与するかどうか。デフォルトは false です。 |
| DeployDeadleterQueue |
boolean
|
デッドレターキューとして使用する 2 次キューを作成するかどうか。デフォルトは true です。 |
| DeadletterQueueProps? |
sqs.QueueProps
|
デッドレターキューのデフォルト小道具を上書きするオプションのユーザ提供の小道具です。場合にのみ使用されます。deployDeadLetterQueueプロパティが true に設定されます。 |
| maxReceiveCount? |
number
|
デッドレターキューに移動する前に、メッセージがデキューされた回数。デフォルトは 15 です。 |
| 既存のVPCかな? |
ec2.IVpc
|
このパターンをデプロイするオプションの既存の VPC。VPC にデプロイされると、Lambda 関数は VPC 内の ENI を使用してネットワークリソースにアクセスし、インターフェイスエンドポイントは Amazon SQS 用の VPC 内に作成されます。既存の VPC が提供されている場合、deployVpcプロパティは、true。あんec2.IVpcを使用して、クライアントがスタックの外部に存在する VPC をec2.Vpc.fromLookup()メソッド。 |
| DeployVPC? |
boolean
|
に基づいて新しい VPC を作成するかどうかvpcPropsこのパターンを展開します。これをに設定するtrueは、パターンを実行するために、最小限のほとんどのプライベート VPC をデプロイします。
true、次にexistingVpcは指定できません。デフォルトは false です。 |
| vPCProps? |
ec2.VpcProps
|
新しい VPC のデフォルトプロパティを上書きするオプションのユーザー指定のプロパティ。enableDnsHostnames,enableDnsSupport,natGateways, およびsubnetConfigurationはパターンによって設定されるため、ここで指定されたプロパティの値はすべてオーバーライドされます。もしdeployVpcではありませんtrueに設定されている場合、このプロパティは無視されます。 |
| キュー環境変数名ですか? |
string
|
Lambda 関数に設定された SQS キュー URL 環境変数のオプション名。 |
パターンプロパティ
| 名前 | タイプ | 説明 |
|---|---|---|
| DeadLetterQueue |
sqs.Queue
|
パターンによって作成されたデッドレターキューのインスタンスを返します(デプロイされている場合)。 |
| LambdaFunction |
lambda.Function
|
パターンによって作成された Lambda 関数のインスタンスを返します。 |
| SQUEUE |
sqs.Queue
|
パターンによって作成された SQS キューのインスタンスを返します。 |
| vpc? |
ec2.IVpc
|
パターンによって作成または使用される VPC のインスタンスを返します(存在する場合)。これは、パターンによって作成された VPC、またはパターンコンストラクタに提供された VPC です。 |
デフォルト設定
オーバーライドなしでコンストラクトをすぐに実装すると、次のデフォルトが設定されます。
AWS Lambda 関数
-
Lambda 関数の制限付き特権アクセス IAM ロールを設定します。
-
NodeJS Lambda 関数のキープアライブで接続を再利用できるようにします。
-
関数がキューへのメッセージの送信のみを許可する(パージは
enableQueuePurgeプロパティ)。 -
X-Ray トレースを有効にする
-
環境変数の設定:
-
SQS_QUEUE_URL -
AWS_NODEJS_CONNECTION_REUSE_ENABLED(ノード10.x以上の機能の場合)
-
Amazon SQS キュー
-
ソース SQS キューの SQS デッドレターキューをデプロイします。
-
AWS マネージド KMS キーを使用して、ソース SQS キューのサーバー側の暗号化を可能にします。
-
転送時のデータの暗号化を強制する。
Architecture
GitHub
| このパターンのコードを表示するには、問題を作成/表示し、プル要求などを行います。 | |
|---|---|
|
@aws-ソリューション-構築/aws-lambda-sqs |