Utilisation de AWS Lambda avec d’autres services - AWS Lambda

Utilisation de AWS Lambda avec d’autres services

AWS Lambda s’intègre à d’autres services AWS pour appeler des fonctions ou exécuter d’autres actions. Voici quelques cas d’utilisation courants :

Selon le service que vous utilisez avec Lambda, l’appel fonctionne généralement de deux manières. Un événement entraîne l’appel ou Lambda interroge une file d’attente ou un flux de données et appelle la fonction en réponse à une activité dans la file d’attente ou dans le flux de données. Lambda s’intègre dans Amazon Elastic File System et dans AWS X-Ray d’une manière qui n’implique pas l’appel de fonctions.

Pour de plus amples informations, veuillez consulter Appel basé sur les événements et Interrogation Lambda. Vous pouvez autrement rechercher le service avec lequel vous souhaitez travailler dans la section suivante afin de rechercher un lien vers des informations sur l’utilisation de ce service avec Lambda.

Recherchez le service avec lequel vous souhaitez travailler dans le tableau suivant, afin de déterminer la méthode d’appel que vous devez utiliser. Cliquez sur le lien à partir du nom du service pour rechercher des informations sur la configuration de l’intégration entre les services. Ces rubriques comportent également des exemples d’événements que vous pouvez utiliser pour tester votre fonction.

Astuce

Les entrées de ce tableau sont par ordre alphabétique et par nom de service, à l’exclusion de la mention « Amazon » ou du préfixe « AWS ». Vous pouvez également utiliser la fonction de recherche de votre navigateur pour rechercher votre service dans la liste.

Service Méthode d’appel

Amazon Alexa

Pilotée par les événements ; appel synchrone

Amazon Managed Streaming for Apache Kafka

Interrogation Lambda

Self-managed Apache Kafka

Interrogation Lambda

Amazon API Gateway

Pilotée par les événements ; appel synchrone

AWS CloudFormation

Pilotée par les événements ; appel asynchrone

Amazon CloudFront (Lambda@Edge)

Pilotée par les événements ; appel synchrone

Amazon EventBridge (CloudWatch Events)

Pilotée par les événements ; appel asynchrone

Amazon CloudWatch Logs

Pilotée par les événements ; appel asynchrone

AWS CodeCommit

Pilotée par les événements ; appel asynchrone

AWS CodePipeline

Pilotée par les événements ; appel asynchrone

Amazon Cognito

Pilotée par les événements ; appel synchrone

AWS Config

Pilotée par les événements ; appel asynchrone

Amazon Connect

Pilotée par les événements ; appel synchrone

Amazon DynamoDB

Interrogation Lambda

Amazon Elastic File System

Intégration spéciale

Elastic Load Balancing (Application Load Balancer)

Pilotée par les événements ; appel synchrone

AWS IoT

Pilotée par les événements ; appel asynchrone

AWS IoT Événements

Pilotée par les événements ; appel asynchrone

Amazon Kinesis

Interrogation Lambda

Amazon Kinesis Data Firehose

Pilotée par les événements ; appel synchrone

Amazon Lex

Pilotée par les événements ; appel synchrone

Amazon MQ

Interrogation Lambda

Amazon Simple Email Service

Pilotée par les événements ; appel asynchrone

Amazon Simple Notification Service

Pilotée par les événements ; appel asynchrone

Amazon Simple Queue Service

Interrogation Lambda

Amazon Simple Storage Service (Amazon S3)

Pilotée par les événements ; appel asynchrone

Amazon Simple Storage Service Batch

Pilotée par les événements ; appel synchrone

Secrets Manager

Pilotée par les événements ; appel synchrone

AWS X-Ray

Intégration spéciale

Appel basé sur les événements

Certains services génèrent des événements qui peuvent appeler votre fonction Lambda. Pour en savoir plus sur les architectures de service Lambda, consultez Architectures pilotées par les événements dans le guide de l’opérateur Lambda.

Lorsque vous mettez en œuvre une architecture pilotée par des événements, vous octroyez au service générateur d’événements l’autorisation d’appeler votre fonction dans la politique basée sur les ressources de la fonction. Ensuite, vous configurez ce service pour générer des événements qui appellent votre fonction.

Les événements sont des données structurées au format JSON. La structure JSON varie en fonction du service qui la génère et du type d’événement, mais elles contiennent toutes les données nécessaires à la fonction pour traiter l’événement.

Lambda convertit le document d’événement en objet et le transmet à votre gestionnaire de fonctions. Pour les langages compilés, Lambda fournit des définitions pour les types d’événements dans une bibliothèque. Pour en savoir plus, consultez la rubrique sur la création de fonctions avec votre langage :Création de fonctions Lambda avec C#, Création de fonctions Lambda avec Go, Création de fonctions Lambda avec Java, ou Création de fonctions Lambda avec PowerShell.

Selon le service, l’appel piloté par l’événement peut être synchrone ou asynchrone.

  • Pour un appel synchrone, l’autre service qui génère l’événement attend la réponse de votre fonction. Ce service définit les données que la fonction doit renvoyer dans la réponse. Le service contrôle la stratégie d’erreur, par exemple s’il faut réessayer les erreurs. Pour de plus amples informations, veuillez consulter Appel synchrone.

  • Pour l’appel asynchrone, Lambda place l’événement dans une file d’attente avant de le transmettre à votre fonction. Lorsque Lambda met l’événement en file d’attent, il envoie immédiatement une réponse de réussite au service qui a généré l’événement. Après que la fonction ait traité l’événement, Lambda ne renvoie pas de réponse au service qui a généré l’événement. Pour de plus amples informations, veuillez consulter Appel asynchrone.

Pour en savoir plus sur la façon dont Lambda traite la gestion des erreurs pour les fonctions appelées de manière synchrone et asynchrone, consultez Gestion des erreurs et tentatives automatiques dans AWS Lambda.

Interrogation Lambda

Pour les services qui génèrent une file d’attente ou un flux de données, vous configurez un mappage de source d’événement dans Lambda afin que Lambda interroge la file d’attente ou un flux de données.

Lorsque vous mettez en œuvre une architecture d’interrogation Lambda, vous octroyez à Lambda l’autorisation d’accéder à l’autre service dans le rôle d’exécution. Lambda lit les données de l’autre service, crée un événement et appelle votre fonction.