💻

Simulateur d'Architecture Serverless

Visualisez les démarrages à froid Lambda, l'auto-scaling et la facturation par invocation en temps réel

💻 Essayer maintenant

Qu'est-ce que le Serverless ?

Le serverless vous permet d'exécuter du code sans provisionner ni gérer de serveurs. Quand une requête arrive, le fournisseur cloud lance un conteneur, exécute votre fonction et le supprime au repos. Les démarrages à froid surviennent quand un nouveau conteneur doit s'initialiser. Vous ne payez que le temps d'exécution réel.

Pourquoi est-ce important ? L'architecture serverless alimente les applications modernes des API aux pipelines de données. AWS Lambda seul traite des trillions d'invocations par mois.

📖 Approfondissement

Analogie 1

Pensez aux serveurs traditionnels, comme si vous possédiez une voiture : vous payez l'assurance, l'essence et l'entretien, que vous conduisiez ou non. Le sans serveur, c'est comme appeler un taxi : vous ne payez que le trajet. Un démarrage à froid attend l'arrivée du taxi ; un démarrage à chaud, c'est quand on est déjà garé devant votre porte.

Analogie 2

Imaginez une cuisine de restaurant qui évoque comme par magie les chefs lorsque les commandes arrivent et les renvoie chez eux lorsque le rush se termine. Le démarrage à froid est le moment d’enfiler le tablier et de se laver les mains ; un démarrage à chaud signifie que le chef est déjà aux fourneaux. La concurrence provisionnée revient à garder un équipage réduit en attente pour le dîner.

🎯 Conseils du simulateur

Débutant

Envoyez des requêtes et regardez les conteneurs tourner (démarrage à froid) puis réutiliser (démarrage à chaud).

Intermédiaire

Comparez les environnements d'exécution Java et Go pour constater des différences spectaculaires en matière de démarrage à froid.

Expert

Définissez la concurrence provisionnée et la pénalité VPC pour optimiser les compromis entre latence et coût.

📚 Glossaire

FaaS
Fonctions en tant que service : un modèle d'exécution cloud dans lequel le fournisseur exécute votre code en réponse à des événements sans que vous ayez à gérer les serveurs. AWS Lambda, Google Cloud Functions et Azure Functions sont les principales plates-formes.
Cold Start
La pénalité de latence lorsqu'un nouveau conteneur de fonctions doit être initialisé à partir de zéro. Inclut le téléchargement du code, le démarrage du runtime et l'exécution de la logique d'initialisation. Généralement 100 ms-2 s pour la plupart des environnements d'exécution, mais peut dépasser 10 s pour Java dans un VPC.
Warm Start
Réutilisation d'un conteneur déjà initialisé pour un appel ultérieur. Les démarrages à chaud ignorent complètement la phase d'initialisation, réduisant ainsi la latence au seul temps d'exécution de la fonction, généralement inférieur à 100 ms.
Concurrency
Nombre d'instances de fonction exécutées simultanément. Chaque exécution simultanée nécessite son propre conteneur. La simultanéité des comptes AWS Lambda par défaut est de 1 000, évolutive jusqu'à des dizaines de milliers.
Provisioned Concurrency
Instances de fonction pré-initialisées qui éliminent les démarrages à froid pour les charges de travail sensibles à la latence. Vous payez pour la capacité provisionnée, qu'elle soit utilisée ou non : un compromis entre latence et coût.
Reserved Concurrency
Un pool de concurrence garanti alloué à une fonction spécifique, garantissant qu'elle dispose toujours de capacité même lorsque d'autres fonctions consomment la limite du compte. Agit également comme un plafond maximum.
Invocation
Une seule exécution d'une fonction sans serveur. L'unité de facturation fondamentale : vous payez par requête (0,20 $ par million) plus par Go-seconde de temps de calcul (0,0000166667 $).
Execution Duration
Temps écoulé entre le début de l'exécution de votre gestionnaire de fonction et son retour ou son expiration. Facturé par incréments de 1 ms. Le maximum est de 15 minutes (900 s) pour AWS Lambda.
Timeout
Durée maximale d'exécution d'une fonction avant d'être interrompue de force. Un réglage trop bas provoque de faux échecs ; trop élevé gaspille de l'argent en invocations bloquées.
VPC Penalty
Latence de démarrage à froid supplémentaire (historiquement 6 à 10 secondes, maintenant ~ 1 seconde avec Hyperplane ENI) lorsqu'une fonction Lambda est configurée pour accéder aux ressources à l'intérieur d'un cloud privé virtuel.
Lambda Layer
Packages réutilisables de bibliothèques, d’extensions d’exécution ou de configuration que les fonctions peuvent référencer. Chaque couche s'ajoute au temps de démarrage à froid mais permet le partage de code entre les fonctions.
Init Duration
Temps passé à exécuter du code en dehors de la fonction de gestionnaire (initialisation de la portée globale). Signalé séparément dans les journaux Lambda. Une initialisation lourde (chargement de modèles ML, pools de connexions DB) augmente les démarrages à froid.

🏆 Personnages clés

Tim Wagner (2014)

A dirigé le lancement d'AWS Lambda en tant que directeur général, créant la première grande plate-forme informatique commerciale sans serveur définissant le paradigme FaaS.

Werner Vogels (2014)

CTO d'Amazon qui a défendu les architectures événementielles et sans serveur, popularisant la philosophie selon laquelle « aucun serveur n'est plus facile à gérer que pas de serveur ».

Kenton Varda (2017)

Création de Cloudflare Workers à l'aide d'isolats V8 au lieu de conteneurs, permettant des démarrages à froid inférieurs à la milliseconde et redéfinissant l'informatique sans serveur de pointe.

Eric Jonas (2019)

Chercheur de l'UC Berkeley qui a co-écrit l'article influent « Cloud Programming Simplified : A Berkeley View on Serverless Computing » définissant le programme de recherche sur le sans serveur.

Guillermo Rauch (2015)

Création de Vercel et Next.js, popularisant le déploiement sans serveur pour les frameworks frontend et rendant les fonctions sans serveur accessibles aux développeurs frontend

Joe Emison (2016)

Un des premiers évangélistes sans serveur et CTO qui a démontré des architectures sans serveur à l'échelle de l'entreprise, prouvant la viabilité du FaaS au-delà de simples cas d'utilisation.

Ajay Nair (2019)

Responsable produit AWS Lambda qui a piloté des fonctionnalités clés, notamment la concurrence provisionnée, les extensions Lambda et la prise en charge des images de conteneur

🎓 Ressources d'apprentissage

💬 Message aux apprenants

L'informatique sans serveur représente l'un des changements les plus importants dans la façon dont nous construisons des logiciels : du provisionnement des serveurs des mois à l'avance à l'écriture d'une fonction qui évolue de zéro à des milliers d'instances en quelques secondes. Le démarrage à froid que vous voyez dans ce simulateur est le même phénomène que les ingénieurs de Netflix, Airbnb et des milliers de startups optimisent chaque jour. Comprendre les compromis entre coût, latence et concurrence fera de vous un meilleur architecte, quel que soit le fournisseur de cloud que vous choisissez. Le cloud n'est pas magique : c'est l'ordinateur de quelqu'un d'autre, brillamment abstrait.

Commencer

Gratuit, sans inscription

Commencer →