Modèle AWS SAM pour une application Kinesis - AWS Lambda

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Modèle AWS SAM pour une application Kinesis

Vous pouvez générer cette application à l'aide d AWS SAM. Pour en savoir plus sur la création de modèles AWS SAM, consultez Concepts de base des modèles AWS SAM dans le Manuel du développeur AWS Serverless Application Model.

Vous trouverez ci-dessous un exemple de modèle AWS SAM pour l'application Lambda extrait du didacticiel. La fonction et le gestionnaire du modèle sont compatibles avec le code Node.js. Si vous utilisez un autre code, mettez à jour les valeurs en conséquence.

Exemple template.yaml : flux Kinesis
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Resources: LambdaFunction: Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: nodejs18.x Timeout: 10 Tracing: Active Events: Stream: Type: Kinesis Properties: Stream: !GetAtt stream.Arn BatchSize: 100 StartingPosition: LATEST stream: Type: AWS::Kinesis::Stream Properties: ShardCount: 1 Outputs: FunctionName: Description: "Function name" Value: !Ref LambdaFunction StreamARN: Description: "Stream ARN" Value: !GetAtt stream.Arn

Le modèle crée une fonction Lambda, un flux Kinesis et un mappage de source d'événement. Le mappage de source d'événement lit à partir du flux et invoque la fonction.

Pour utiliser un flux consommateur HTTP/2, créez le consommateur dans le modèle et configurez le mappage de source d'événement pour lire à partir du consommateur plutôt qu'à partir du flux.

Exemple template.yaml : consommateur de flux Kinesis
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: A function that processes data from a Kinesis stream. Resources: function: Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: nodejs12.x Timeout: 10 Tracing: Active Events: Stream: Type: Kinesis Properties: Stream: !GetAtt streamConsumer.ConsumerARN StartingPosition: LATEST BatchSize: 100 stream: Type: "AWS::Kinesis::Stream" Properties: ShardCount: 1 streamConsumer: Type: "AWS::Kinesis::StreamConsumer" Properties: StreamARN: !GetAtt stream.Arn ConsumerName: "TestConsumer" Outputs: FunctionName: Description: "Function name" Value: !Ref function StreamARN: Description: "Stream ARN" Value: !GetAtt stream.Arn ConsumerARN: Description: "Stream consumer ARN" Value: !GetAtt streamConsumer.ConsumerARN

Pour plus d'informations sur la manière d'empaqueter et de déployer votre application sans serveur à l'aide des commandes de mise en package et de déploiement, consultez Déploiement d'applications sans serveur dans le Guide du développeur AWS Serverless Application Model.