Lambda@Edge est une fonction d’Amazon CloudFront qui vous permet d’exécuter votre code plus près des utilisateurs de votre application, ce qui améliore les performances et réduit la latence. Avec Lambda@Edge, vous n’avez pas besoin de provisionner ou de gérer une infrastructure dans plusieurs régions du monde. Vous payez uniquement pour le temps de calcul consommé, il n'y a aucun frais lorsque votre code n'est pas exécuté.
Avec Lambda@Edge, vous pouvez enrichir vos applications Web en les distribuant dans le monde entier et en améliorant leurs performances, le tout sans administration de serveur. Lambda@Edge exécute votre code en réponse à des événements générés par le réseau de diffusion de contenu (CDN) Amazon CloudFront. Il suffit de charger votre code sur AWS Lambda qui s'occupe de tout ce qui est nécessaire pour son exécution et son dimensionnement en proposant une haute disponibilité dans un emplacement AWS proche de votre utilisateur final.
Avantages
Générez des applications plus réactives
Lambda@Edge exécute votre code dans le monde entier depuis des emplacements AWS proches de vos utilisateurs, afin que vous puissiez fournir du contenu personnalisé avec des performances élevées et une latence faible.
Aucun serveur à gérer
Vous pouvez faire évoluer et exécuter automatiquement votre code dans des emplacements AWS du monde entier sans avoir besoin de provisionner, mettre à l’échelle ou gérer des serveurs d’origine dans plusieurs régions ou de configurer des services d’acheminement DNS ou d’équilibrage de charge. Vous pouvez ajouter de nouvelles fonctions sans effectuer de modification de vos applications existantes qui s’exécutent dans votre origine. Pour finir, en utilisant Lambda@Edge et Amazon CloudFront, vous avez moins d’infrastructure d’origine à gérer qu’avec des CDN traditionnels.
Personnaliser la fourniture de contenus
Lambda@Edge vous permet de personnaliser le contenu fourni par le biais du CDN Amazon CloudFront, ainsi que les ressources de calcul et le délai d’exécution, selon les besoins de votre application en termes de performances.
Fonctionnement
Cas d'utilisation
SIMPLIFIER ET RÉDUIRE L’INFRASTRUCTURE D’ORIGINE
Vous pouvez utiliser Lambda@Edge comme une extension ou en remplacement de votre origine. Cela vous permet de tout faire, du simple traitement des requêtes et des réponses HTTP en périphérie à des fonctions plus avancées, comme la sécurité des sites Web, la transformation d’images en temps réel, l’atténuation des robots intelligents, l’optimisation des moteurs de recherche et plus.
Sécurité et confidentialité des sites Web
Vous pouvez déclencher une fonction Lambda pour ajouter des en-têtes de sécurité HTTP sur toutes les réponses de l’origine pour modifier votre code d’application sur votre origine. Cela aide à améliorer la sécurité et la confidentialité pour vos utilisateurs et fournisseurs de contenu, tout en utilisant CloudFront pour fournir le contenu avec de faibles latences.
Application Web dynamique en périphérie
En combinant Lambda@Edge avec d’autres services AWS, les développeurs peuvent créer de puissantes applications Web en périphérie qui évoluent de façon automatique, sans effort administratif ni infrastructure d’origine pour la mise à l’échelle automatique, les sauvegardes ou la redondance des centres de données.
Optimisation des moteurs de recherche (SEO)
Vous pouvez utiliser Lambda@Edge pour améliorer l’optimisation des moteurs de recherche (SEO) pour votre site Web. Par exemple, vous pouvez déclencher une fonction Lambda pour fournir une page HTML préaffichée stockée dans Amazon S3, lorsque l’agent utilisateur est un robot de moteur de recherche comme Googlebot ou Bingbot.
Itinéraire intelligent entre les origines et les centres de données
En utilisant Lambda@Edge pour acheminer les requêtes de façon dynamique vers les différentes origines selon les caractéristiques des utilisateurs, vous pouvez équilibrer la charge sur vos origines, tout en améliorant les performances pour vos utilisateurs. Par exemple, vous pouvez acheminer des requêtes vers les origines au sein d’une région, selon l’emplacement de l’utilisateur.
Atténuation des robots en périphérie
Lambda@Edge peut vous aider à bloquer les robots indésirables en périphérie et laisser passer le trafic autorisé. L’atténuation intelligente de ces processus automatisés permet de protéger votre infrastructure d’origine des robots Web indésirables, tout en améliorant les performances pour les vrais utilisateurs.
AMÉLIORATION DE L’EXPÉRIENCE UTILISATEUR
Lambda@Edge permet d’améliorer l’expérience utilisateur avec vos sites et applications Web dans le monde entier, en vous permettant de personnaliser du contenu sans sacrifier les performances.
Transformation d’images en temps réel
Vous pouvez personnaliser l’expérience utilisateur en transformant les images à la volée selon les caractéristiques des utilisateurs. Par exemple, vous pouvez redimensionner les images selon le type d’appareil de l’utilisateur (portable, ordinateur ou tablette). Vous pouvez également mettre les images transformées en cache dans des emplacements périphériques CloudFront pour améliorer encore les performances de transfert d’images.
Tests A/B
Vous pouvez tester et fournir différentes versions de votre site Web aux utilisateurs sans redirection ou modification de l’URL du navigateur. Cela vous permet de lancer des mises à jour sur votre site Web pour améliorer l’expérience globale tout en assurant la réactivité pour les utilisateurs.
Authentification et autorisation des utilisateurs
Vous pouvez utiliser Lambda@Edge pour authentifier et autoriser les utilisateurs pour le contenu premium de votre site Web, en filtrant les requêtes non autorisées avant qu’elles atteignent votre infrastructure d’origine. Vous pouvez par exemple déclencher une fonction Lambda pour autoriser chaque utilisateur en demandant l’authentification et des services de gestion des utilisateurs comme Amazon Cognito.
Hiérarchisation des utilisateurs
Lambda@Edge vous aide à contrôler et hiérarchiser l’accès à votre site Web en acheminant les utilisateurs vers différentes pages et expériences. Par exemple, vous pouvez déclencher une fonction Lambda qui exécute du code pour donner la priorité aux utilisateurs premium et payants sur votre site de commerce en ligne lors des pics de trafic pendant les soldes. Vous pouvez également rediriger les autres clients vers une salle d’attente temporaire (un autre site avec des offres marketing où ils peuvent attendre leur tour pour accéder au site principal).
Suivi des utilisateurs et analytique
En combinant Lambda@Edge et Kinesis, vous pouvez traiter les données de diffusion en temps réel afin de suivre et d’analyser l’activité des utilisateurs dans le monde entier, sur votre site Web et vos applications mobiles, y compris une analyse des clics.
Rubriques connexes
Échangez avec d’autres développeurs sur Amazon CloudFront et Lambda@Edge dans le forum de discussions.
Dans notre documentation, vous trouverez plus d’informations sur la personnalisation de contenu en périphérie avec Amazon CloudFront et Lambda@Edge
Commencez à créer avec Lambda@Edge dans la console AWS.