Invocation de fonctions Lambda
Vous pouvez invoquer les fonctions Lambda directement en utilisant la console Lambda, un point de terminaison HTTP(S) d'URL de la fonction, l'API Lambda, un kit SDK AWS
Lorsque vous invoquez une fonction, vous pouvez choisir de le faire de façon synchrone ou asynchrone. Avec une invocation synchrone, vous attendez de la fonction qu'elle traite l'événement et renvoie une réponse. Avec l'invocation asynchrone, Lambda place en file d'attente l'événement à traiter, et renvoie une réponse immédiatement. Pour l'invocation asynchrone, Lambda gère les nouvelles tentatives et peut envoyer des enregistrements d'invocation à une destination.
Pour qu'un autre service AWS invoque directement votre fonction, vous devez créer un déclencheur à l'aide de la console Lambda. Un déclencheur est une ressource que vous configurez pour permettre à un autre service AWS d'invoquer votre fonction lorsque certains événements ou conditions se produisent. Votre fonction peut avoir plusieurs déclencheurs. Chaque déclencheur agit comme un client qui invoque votre fonction indépendamment, et chaque événement que Lambda transmet à votre fonction contient des données provenant d'un seul déclencheur.
Pour créer un déclencheur, ouvrez la page des fonctions
Chaque service varie au niveau des options que vous configurez pour le déclencheur, ainsi qu'au niveau de la structure de l'événement que le service envoie à votre fonction Lambda pour l'invoquer. Pour obtenir une liste complète des services AWS qui peuvent invoquer votre fonction Lambda à l'aide d'un déclencheur, et pour plus d'informations sur la configuration des déclencheurs pour différents services, consultez Utilisation de Lambda avec d'autres services.
Pour que votre fonction Lambda traite les éléments d'un flux ou d'une file d'attente, tels qu'un flux Amazon Kinesis ou une file d'attente Amazon Simple Queue Service (Amazon SQS), vous devez créer un mappage des sources d'événements. Un mappage des sources d'événements est une ressource dans Lambda qui lit les éléments d'un flux ou d'une file d'attente et crée des événements contenant des lots d'éléments à envoyer à votre fonction Lambda. Chaque événement traité par votre fonction peut contenir des centaines ou des milliers d'éléments.
Vous pouvez créer un mappage des sources d'événements pour votre fonction Lambda à l'aide de la console Lambda, de l'AWS CLI, de l'API Lambda ou d'un kit SDK AWS. Pour créer un mappage des sources d'événements dans la console Lambda, suivez les instructions pour créer un déclencheur, et sélectionnez l'un des services AWS qui prennent en charge les mappages des sources d'événements comme source. Pour créer un mappage des sources d'événements à l'aide de l'AWS CLI, de l'API Lambda ou d'un kit SDK AWS, et pour consulter la liste des services AWS compatibles avec les mappages des sources d'événements, reportez-vous à Mappage de source d’événement Lambda.
En fonction de la façon dont votre fonction est invoquée, le comportement de dimensionnement et les types d'erreurs qui surviennent peuvent changer. Lorsque vous invoquez une fonction synchrone, vous recevez des erreurs dans la réponse et pouvez réessayer. Lorsque vous invoquez votre fonction de manière asynchrone, que vous utilisez un mappage des sources d'événements ou que vous configurez un autre service pour invoquer votre fonction, les exigences de nouvelles tentatives et la manière dont votre fonction évolue pour gérer un grand nombre d'événements varient. Pour de plus amples informations, veuillez consulter Gestion des erreurs et tentatives automatiques dans AWS Lambda.
Rubriques
- Test des fonctions Lambda dans la console
- Invocation synchrone
- Appel asynchrone
- Mappage de source d’événement Lambda
- Filtrage des événements Lambda
- États de la fonction Lambda
- Gestion des erreurs et tentatives automatiques dans AWS Lambda
- Appel des fonctions définies en tant qu'images de conteneur
- Détection de boucle récursive Lambda
- URL de fonctions Lambda