Types d'applications Lambda courantes et cas d'utilisation - 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.

Types d'applications Lambda courantes et cas d'utilisation

Les fonctions et déclencheurs Lambda sont les principaux composants de la création d'applications sur AWS Lambda. Une fonction Lambda est le code et le runtime qui traitent les événements, tandis qu'un déclencheur est l'application ou le service AWS qui appelle la fonction. Pour bien comprendre cette distinction, prenez en compte les scénarios suivants :

  • Traitement des fichiers – Supposons que votre application serve à partager des photos. Les personnes l'utilisent pour importer des photos que l'application stocke dans un compartiment Amazon S3. L'application crée ensuite une miniature des photos de chaque utilisateur et les affiche sur leur page de profil. Dans ce scénario, vous pouvez choisir de créer une fonction Lambda qui crée une miniature automatiquement. Amazon S3 est l'une des sources d'événements AWS prises en charge, capables de publier des événements de création d'objet et d'appeler votre fonction Lambda. Le code de la fonction Lambda permet de lire l'objet photo dans le compartiment S3, d'en créer une version miniature, et de l'enregistrer dans un autre compartiment S3.

  • Données et analyses – Supposons que vous concevez une application d'analyse et stockez des données brutes dans une table DynamoDB. Lorsque vous écrivez, mettez à jour ou supprimez des éléments dans une table, les flux DynamoDB peuvent publier des événements de mise à jour de ces éléments dans un flux associé à cette table. Dans ce cas, les données d'événement fournissent la clé de l'élément, le nom de l'événement (insertion, mise à jour ou suppression, par exemple) et tout autre détail pertinent. Vous pouvez écrire une fonction Lambda afin de générer des métriques personnalisées en agrégeant des données brutes.

  • Sites web – Supposons que vous créez un site web et souhaitez héberger la logique backend sur Lambda. Vous pouvez appeler votre fonction Lambda via HTTP en utilisant Amazon API Gateway comme point de terminaison HTTP. Désormais, le client web peut appeler l'API, puis API Gateway peut acheminer la demande vers Lambda.

  • Applications mobiles – Supposons que vous avec une application mobile personnalisée qui génère des événements. Vous pouvez créer une fonction Lambda pour traiter les événements publiés par votre application personnalisée. Par exemple, vous pouvez configurer une fonction Lambda pour traiter les clics au sein de votre application mobile personnalisée.

AWS Lambda prend en charge de nombreux services AWS en tant que sources d'événements. Pour de plus amples informations, veuillez consulter Utilisation AWS Lambda avec d'autres services. Lorsque vous configurez ces sources d'événements pour déclencher une fonction Lambda, cette dernière est appelée automatiquement lorsque des événements se produisent. Vous définissez un mappage des sources d'événements, qui détermine comment identifier les événements à suivre et la fonction Lambda à appeler.

Vous trouverez ci-dessous des exemples d'introduction des sources d'événements et du fonctionnement de l' end-to-end expérience.

Exemple 1 : Amazon S3 transmet des événements et appelle une fonction Lambda

Amazon S3 peut publier des événements de différents types, tels que les événements d'objets PUT, POST, COPY et DELETE au niveau d'un compartiment. Avec la fonctionnalité des notifications de compartiment, vous pouvez configurer un mappage de source d'événement qui indique à Amazon S3 d'appeler une fonction Lambda lorsqu'un type spécifique d'événement se produit.

Voici une séquence type :

  1. L'utilisateur crée un objet dans un compartiment.

  2. Amazon S3 détecte l'événement de création d'objet.

  3. Amazon S3 appelle votre fonction Lambda en utilisant les autorisations fournies par le rôle d'exécution.

  4. AWS Lambda exécute la fonction Lambda en spécifiant l'événement comme paramètre.

Vous configurez Amazon S3 pour appeler votre fonction en tant qu'action de notification de compartiment. Pour accorder à Amazon S3 l'autorisation d'appeler la fonction, mettez à jour la stratégie basée sur une ressource de la fonction.

Exemple 2 : AWS Lambda extrait les événements d'un flux Kinesis et appelle une fonction Lambda

Pour les sources d'événements basées sur une interrogation, AWS Lambda interroge la source puis appelle la fonction Lambda lorsque des enregistrements sont détectés dans cette source.

Les étapes suivantes expliquent comment une application personnalisée écrit des registres dans un flux Kinesis.

  1. L'application personnalisée écrit les registres dans un flux Kinesis.

  2. AWS Lambda interroge continuellement le flux et appelle la fonction Lambda lorsque le service détecte de nouveaux enregistrements dans le flux. AWS Lambda sait quel flux interroger et quelle fonction Lambda appeler sur la base du mappage de source d'événement que vous créez dans Lambda.

  3. La fonction Lambda est appelée avec l'événement entrant.

Lorsque vous utilisez des sources d'événements basées sur un flux, vous créez des mappages de sources d'événements dans AWS Lambda. Lambda lit les éléments du flux et appelle la fonction de manière synchrone. Lambda n'a pas besoin d'autorisation pour appeler la fonction, mais bien pour lire le flux.