DevOps
Cloud AWS
Démarrer avec AWS

Le calcul sans serveur vous permet de concevoir et d'exécuter des applications et des services sans se soucier des serveurs. Avec le calcul sans serveur, votre application s'exécute toujours sur des serveurs, mais la gestion des serveurs est effectuée par AWS. Au cœur du calcul sans serveur se trouve AWS Lambda, qui vous permet d'exécuter votre code sans mettre en service ou gérer de serveurs. Vous pouvez exécuter du code pour pratiquement n'importe quel type d'application ou de service backend : Lambda fait le nécessaire pour l'exécuter et le dimensionner en assurant une haute disponibilité.

Pour en savoir plus, inscrivez-vous à nos prochaines conférences techniques : 

100x100_benefit_code-quality

AWS Lambda exécute automatiquement votre code, sans que vous ayez à mettre en service ou gérer des serveurs. Il vous suffit d'écrire du code et de le charger dans Lambda.

100x100_benefit_increase-upward1

AWS Lambda dimensionne automatiquement votre application en exécutant le code en réponse à chaque déclencheur. Votre code s'exécute en parallèle et traite chaque déclencheur indépendamment. La charge de travail est ainsi dimensionnée de façon précise.

100x100_benefit_performance

Avec AWS Lambda, les frais s'appliquent à chaque 100 ms d'exécution de votre code et selon le nombre de fois où il est déclenché. Vous ne payez rien lorsque votre code n'est pas exécuté.

Le calcul sans serveur permet de créer des applications évolutives et économiques qui effectuent automatiquement une mise à l'échelle ascendante ou descendante, sans qu'il soit nécessaire de mettre en service, de dimensionner ou de gérer des serveurs. Il vous suffit d'utiliser Lambda pour exécuter le code de votre application et le service déclenchera votre code en réponse à des événements tels que des requêtes HTTP ou des modifications de données dans un compartiment Amazon S3 ou une table Amazon DynamoDB. Vous êtes facturé en fonction de la durée d'exécution et du nombre de déclenchements de votre code. Etant donné que Lambda évolue précisément avec la taille de votre charge de travail, vous ne payez jamais pour des tâches de calcul inutiles.

AWS propose également un ensemble de services entièrement gérés que vous pouvez utiliser avec Lambda pour créer des applications sans serveur. Ces services vous permettent d'ajouter des niveaux de base de données et de stockage pour votre application ou de gérer les connexions et les messages d'appareils mobiles et IoT. Vous pouvez utiliser ces services avec Lambda pour créer des applications qui ne nécessitent pas la mise en service et la maintenance de serveurs ni l'administration de bases de données. Vous n'avez plus à vous préoccuper de la tolérance aux pannes ni de la disponibilité de l'application. AWS vous offre toutes ces fonctionnalités, ce qui vous permet de vous concentrer sur l'innovation de produits et de réduire les délais de commercialisation.

Une application sans serveur à l'échelle nécessite une plate-forme proposant un large éventail de fonctionnalités. Voici comment AWS prend en charge les applications d'entreprise créées à l'aide du calcul sans serveur :

Couche cloud logique

Optimisez votre logique business avec AWS Lambda, qui peut servir de plan de contrôle et de couche logique pour toutes vos ressources d'infrastructure interconnectées et API web.  

Orchestration et gestion des états

Coordonnez et gérez l'état de chaque composant distribué ou microservice de votre application sans server à l'aide d'AWS Step Functions.

Sources de données réactives

Faites votre choix parmi un large éventail de sources de données et de fournisseurs que vous pouvez utiliser pour traiter des données ou déclencher des événements en temps réel. Consultez notre documentation pour obtenir la liste des sources de données réactives.

Framework de modélisation d'applications

Utilisez le modèle d'application sans serveur AWS open source pour modéliser et déployer vos applications et services sans serveur. Diffusez en continu vos applications sans serveur à l'aide d'outils de gestion du cycle de vie tels qu'AWS CodePipeline et AWS CodeBuild.

Ecosystème de développement

Exploitez un écosystème d'outils tiers et de projets open source qui simplifient la création, le test et le déploiement de code, du développement à la production. Consultez notre page consacrée aux écosystèmes pour en savoir plus sur les outils de développement.

Bibliothèque d'intégrations

Démarrez rapidement avec notre ensemble de templates ou de plans réutilisables qui facilitent l'utilisation des intégrations à des services tiers populaires (par ex., Slack, Algorithmia, Twilio, Loggly, Splunk, Sumo Logic, etc).

Contrôle de la sécurité et des accès

Garantissez la conformité et sécurisez l'ensemble de votre environnement informatique avec la journalisation, le suivi des modifications, les contrôles d'accès et le chiffrement. Contrôlez l'accès à vos ressources AWS en toute sécurité avec AWS Identity and Access Management (IAM). Utilisez Amazon Virtual Private Cloud (VPC) pour créer des réseaux virtuels privés auxquels vous seul pouvez accéder.

Fiabilité et performances

AWS propose des services hautement disponibles, évolutifs et à faible coût qui peuvent offrir d'excellentes performances à l'échelle de l'entreprise. AWS Lambda exécute de manière fiable votre logique business grâce à des fonctionnalités intégrées telles que les files d'attente de lettres mortes et les tentatives automatiques. Consultez les témoignages de nos clients pour découvrir comment les entreprises utilisent AWS pour exécuter leurs applications.

Echelle et portée mondiales

Donnez à votre application et à vos services une portée mondiale en quelques minutes grâce à notre présence internationale. AWS Lambda est disponible dans plusieurs régions AWS et dans tous les emplacements périphériques AWS via Lambda@Edge. Vous pouvez également exécuter des fonctions Lambda sur des appareils locaux connectés avec AWS Greengrass.

AWS vous propose un ensemble de services entièrement gérés que vous pouvez utiliser pour créer des applications et des services sans serveur hautement évolutifs. Vous pouvez tout créer, des backends mobiles aux processeurs de données en streaming, à l'aide du calcul sans serveur.

Calcul

AWS Lambda vous permet d'exécuter du code sans avoir à mettre en service ou gérer des serveurs. Vous payez uniquement le temps de calcul utilisé. Aucuns frais ne vous sont facturés lorsque votre code n'est pas exécuté. Il vous suffit de charger votre code : Lambda fait le nécessaire pour l'exécuter et le dimensionner en assurant une haute disponibilité.

Stockage

Amazon Simple Storage Service (Amazon S3) offre aux développeurs et aux équipes informatiques un espace de stockage d'objets sécurisé, durable et hautement évolutif. Amazon S3 est facile à utiliser et doté d'une interface de services web simple pour stocker et récupérer toute quantité de données depuis n'importe où sur le Web.

Bases de données

Amazon DynamoDB est un service de base de données NoSQL rapide et flexible pour toutes les applications nécessitant une latence constante de quelques millisecondes, quelle que soit l'échelle. Il s'agit d'une base de données cloud entièrement gérée qui prend en charge les modèles de stockage de documents et de clés-valeurs.

API proxy

Amazon API Gateway est un service entièrement géré qui permet aux développeurs de créer, publier, gérer, surveiller et sécuriser facilement des API à n'importe quelle échelle. Amazon API Gateway vous permet de traiter des centaines de milliers d'appels d'API simultanés et se charge de la gestion du trafic, du contrôle des autorisations et des accès, de la surveillance et de la gestion de la version de l'API.

Analyse

Amazon Kinesis est une plate-forme destinée aux données en streaming sur AWS, proposant des services puissants qui facilitent le chargement et l'analyse des données en streaming, et offrent également la possibilité de concevoir des applications de données en streaming personnalisées afin de répondre à vos besoins spécifiques.

Messagerie et files d'attente

Amazon SNS est un service de messagerie conçu sur le modèle pub/sub, rapide, flexible et entièrement géré. Vous pouvez l'utiliser en tant que service de notification pour applications mobiles. Basé sur le cloud, il vous permet d'envoyer des notifications push, des e-mails et des SMS. Vous pouvez également vous en servir en tant qu'infrastructure de messagerie professionnelle. Amazon SQS est un service de file d'attente de messagerie rapide, fiable, évolutif et entièrement géré. SQS permet de découpler de manière simple et rentable les composants d'une application cloud.

Orchestration et gestion des états

AWS Step Functions facilite la coordination des composants d'applications distribuées et de microservices utilisant des flux de travail visuels. Le développement d'applications à partir de composants individuels qui réalisent chacun une fonction discrète vous permet de mettre à l'échelle et de modifier les applications rapidement. Step Functions est un moyen fiable de coordonner des composants et suivre les fonctions de votre application.

Diagnostic

AWS X-Ray aide les développeurs à analyser et à déboguer la production et les applications distribuées, comme celles créées à l'aide d'une architecture de microservices. X-Ray vous permet de comprendre le fonctionnement de votre application. Ses services sous-jacents s'occupent de l'identification et de la résolution de la cause profonde des problèmes et des erreurs de performance.

Créez pratiquement n'importe quel type d'application ou de service backend à l'aide d'une architecture sans serveur.
Vous trouverez ci-dessous quelques cas d'utilisation :
 

Il est possible de créer des applications web et des backends sans serveur à l'aide d'AWS Lambda, d'Amazon API Gateway, d'Amazon S3 et d'Amazon DynamoDB pour gérer des requêtes d'API web, mobiles, ou encore provenant de l'Internet des objets (IoT) ou de chatbots.

Exemple : architecture de référence pour les applications web : Schéma | Exemple de code

Lambda_WebApplications

Exemple : architecture de référence pour les backends mobiles : Schéma | Exemple de code

Lambda_MobileBackends
Lambda_Bustle

Bustle exécute un backend sans serveur pour son application iOS Bustle et ses sites web à l'aide d'AWS Lambda et d'Amazon API Gateway. Grâce aux architectures sans serveur, Bustle n'a pas à se soucier de la gestion de l'infrastructure. Chaque ingénieur peut donc se concentrer sur la création de nouvelles fonctionnalités et sur l'innovation. Lire l'étude de cas »

Vous pouvez créer différents systèmes de traitement de données en temps réel à l'aide d'AWS Lambda, d'Amazon Kinesis, d'Amazon S3 et d'Amazon DynamoDB.

Exemple : architecture de référence pour le traitement de données : Schéma | Exemple de code

Lambda_FileProcessing
Lambda_SeattleTimes

Le Seattle Times utilise AWS Lambda pour redimensionner les images à afficher sur différents appareils : ordinateurs de bureau, tablettes et smartphones. Lire l'étude de cas »


Exemple : architecture de référence pour les données en streaming et en temps réel : Schéma | Exemple de code 

Lambda_StreamProcessing
serverless-benchling

Benchling utilise une architecture sans serveur pour traiter des données génomiques à grande échelle, réduisant ainsi les temps de traitement de 90 %. Cela permet aux scientifiques d'utiliser leur plate-forme pour consacrer plus de temps à leurs recherches. Lire l'étude de cas »