Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
aws-lambda-sqs
Alle Klassen befinden sich in aktiver Entwicklung und unterliegen nicht abwärtskompatiblen Änderungen oder Entfernen in jeder zukünftigen Version. Diese unterliegen nicht derSemantische Versionierung
Hinweis: Um eine ordnungsgemäße Funktionalität sicherzustellen, müssen die AWS Solutions Constructs Pakete und AWS CDK-Pakete in Ihrem Projekt dieselbe Version aufweisen.
Sprache | Paket |
---|---|
|
aws_solutions_constructs.aws_lambda_sqs
|
|
@aws-solutions-constructs/aws-lambda-sqs
|
|
software.amazon.awsconstructs.services.lambdasqs
|
Overview
Dieses AWS Solutions Construct implementiert eine AWS Lambda Funktion, die mit einer Amazon SQS Warteschlange verbunden ist.
Hier ist eine minimale bereitstellbare Musterdefinition in 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);
Parameter
-
Bereich
Construct
-
id
string
-
propsLambdaToSqsProps
Muster-Konstrukt
Name | Typ | Beschreibung |
---|---|---|
Gibt es LambdaObj? |
lambda.Function
|
Eine optionale, vorhandene Lambda Funktion, die anstelle der Standardfunktion verwendet wird. Bereitstellung sowohl dieser als auchlambdaFunctionProps führt zu einem -Fehler. |
LambdaFunctionProps? |
lambda.FunctionProps
|
Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für die Lambda Funktion zu überschreiben. |
BestehenQueueObj? |
sqs.Queue
|
Eine optionale, vorhandene SQS-Warteschlange, die anstelle der Standardwarteschlange verwendet werden soll. Bereitstellung sowohl dieser als auchqueueProps führt zu einem -Fehler. |
QueueProps? |
sqs.QueueProps
|
Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für die SQS-Warteschlange zu überschreiben. |
EnableQueueSurging? |
boolean
|
Gibt an, ob der Lambda Funktion zusätzliche Berechtigungen erteilt werden sollen, um die SQS-Warteschlange zu bereinigen. Standardeinstellung: false . |
DeployDeadletterQueue? |
boolean
|
Ob eine sekundäre Warteschlange erstellt wird, die als Warteschlange für unzustellbare Nachrichten verwendet wird. Standardeinstellung: true . |
DeadLetterQueueProps? |
sqs.QueueProps
|
Optionale, vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standardrequisiten für die Warteschlange für tote Buchstaben. Wird nur verwendet, wenndeployDeadLetterQueue wird auf „true“ festgelegt. |
MaxReceiveCount? |
number
|
Die Anzahl, wie oft eine Nachricht nicht in die Warteschlange entfernt werden kann, bevor sie in die Warteschlange für unzustellbare Nachrichten verschoben wird. Standardeinstellung: 15 . |
ExistenzVPC? |
ec2.IVpc
|
Eine optionale vorhandene VPC, in der dieses Pattern bereitgestellt werden soll. Bei der Bereitstellung in einer VPC verwendet die Lambda Funktion ENIs in der VPC, um auf Netzwerkressourcen zuzugreifen, und in der VPC für Amazon SQS wird ein Interface Endpoint erstellt. Wenn eine vorhandene VPC bereitgestellt wird, wird diedeployVpc kann nichttrue . Einec2.IVpc wird verwendet, um Clients die Bereitstellung von VPCs zu ermöglichen, die außerhalb des Stacks vorhanden sind, mithilfe derec2.Vpc.fromLookup() -Methode. |
DeployVPC? |
boolean
|
Erstellen Sie, ob eine neue VPC basierend aufvpcProps , in das dieses Muster bereitgestellt werden soll. Setzen Sie diese Einstellung auftrue stellt die minimale, privatste VPC bereit, um das Pattern auszuführen:
true , dannexistingVpc kann nicht angegeben werden. Standardeinstellung: false . |
VPCProps? |
ec2.VpcProps
|
Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für die neue VPC zu überschreiben.enableDnsHostnames ,enableDnsSupport ,natGateways , undsubnetConfiguration durch das Muster festgelegt werden, so dass alle Werte für die hier angegebenen Eigenschaften überschrieben werden. WenndeployVpc ist nichttrue wird diese Eigenschaft ignoriert. |
WarteschlangenEnvironmentVariablenname? |
string
|
Optionaler Name für die SQS-Warteschlangen-URL-Umgebungsvariable, die für die Lambda Funktion festgelegt wurde. |
Muster-Eigenschaften
Name | Typ | Beschreibung |
---|---|---|
DeadLetterQueue? |
sqs.Queue
|
Gibt eine Instanz der Warteschlange für toten Buchstaben zurück, die durch das Muster erstellt wurde, wenn eine bereitgestellt wird. |
LambdaFunction |
lambda.Function
|
Gibt eine Instanz der Lambda Funktion zurück, die durch das Muster erstellt wurde. |
SQSQueue |
sqs.Queue
|
Gibt eine Instanz der SQS-Warteschlange zurück, die durch das Muster erstellt wurde. |
vpc? |
ec2.IVpc
|
Gibt eine Instanz der VPC zurück, die vom Muster erstellt oder verwendet wird (falls vorhanden). Dies kann eine VPC sein, die durch das Muster erstellt wurde, oder eine VPC, die dem Musterkonstruktor zur Verfügung gestellt wird. |
Standardeinstellung
Die Out-of-the-Box-Implementierung des Construct ohne Überschreibung setzt die folgenden Standardwerte:
AWS Lambda-Funktion
-
Konfigurieren Sie die IAM-Rolle für den eingeschränkten Zugriffsberechtigungen für Lambda Funktion.
-
Aktivieren Sie die Wiederverwendung von Verbindungen mit Keep-Alive für NodeJS Lambda Funktion.
-
Erlauben Sie der Funktion, nur Nachrichten an die Warteschlange zu senden (das Löschen kann mit dem
enableQueuePurge
-Eigenschaft). -
Aktivieren der X-Ray blaufverfolgung
-
Festlegen von Umgebungsvariablen:
-
SQS_QUEUE_URL
-
AWS_NODEJS_CONNECTION_REUSE_ENABLED
(für Node 10.x und höhere Funktionen)
-
Amazon SQS-Warteschlange
-
Bereitstellen der SQS-Warteschlange für unzustellbare Nachrichten für die SQS-Quellwarteschlange
-
Aktivieren der serverseitigen Verschlüsselung für SQS-Quellwarteschlange mithilfe von AWS Managed KMS-Schlüssel
-
Erzwingen der Verschlüsselung von Daten während der Übertragung
Architecture
GitHub
Um den Code für dieses Muster anzuzeigen, erstellen/anzeigen Probleme und Pull-Anforderungen usw.: | |
---|---|
|
@aws -solutions-constructs/aws-lambda-sqs |