Qu’est-ce que le "serverless" ?

Vincent Le Gentil photo
Vincent Le Gentil - 20/10/2022 - 3 mins
quest-ce-que-le-serverless-agence-nuage

Le Serverless est un modèle de cloud-computing dans lequel le client peut créer et exécuter ses applications sans avoir à se soucier de la partie serveur.

Contrairement à ce que son nom peut laisser penser, le code des applications continue de s'exécuter sur des serveurs mais la gestion de ses derniers incombe désormais au fournisseur de la solution cloud.

Le modèle Serverless face aux modèles de cloud computing standards type IaaS (Infrastructure as a Service) ?

Avec un modèle IaaS, le client achète ou loue des serveurs auprès d'un fournisseur cloud. Il va donc payer pour faire tourner en permanence des composants d’un serveur actif. Dans ce cas, c’est au client de gérer la mise à l’échelle de l’infrastructure en cas de montée en charge.

“ Avec une offre IaaS l’infrastructure cloud reste active même lorsqu’aucune sollicitation n’est en cours.”

A contrario avec un modèle Serverless, lorsqu’un événement déclenche l'exécution d’un code d'application, le fournisseur cloud fournit les ressources nécessaires à la charge de travail correspondante. Cela engendre deux choses, l’infrastructure cloud se met en route que lors d’un besoin et le client ne paie que pour cette durée de consommation.

“Avec le Serverless vous ne payez que pour les ressources utilisées et votre solution tourne uniquement en cas de besoin. Une solution économique et écologique.”

Les avantages du modèle Serverless

  • Gain de temps

Traditionnellement les équipes techniques, développent et déploient les applications web sur des serveurs dont ils sont responsables ce qui nécessite un entretien régulier :

  • Maintien des serveurs disponibles (Même non utilisés)

  • Maintenance de serveurs et management de leurs ressources

  • Application des patches de sécurité

  • Ajustement de la charge en fonction de l’évolution

En bref, c’est un travail complexe et chronophage pour les équipes, qui vient s’ajouter à la mission initiale : construire et maintenir des applications.

Avec le Serverless, c’est terminé ! C’est le fournisseur du service cloud qui est responsable de l’infrastructure cloud et de la mise à l’échelle des applications. Ainsi les développeurs peuvent se concentrer sur leur mission principale et ils n’ont plus qu’à compiler leur code dans des conteneurs pour déployer les applications.

  • Scalabilité

Comme évoqué précédemment, c’est le déclenchement du code de votre application qui déclenche chez le fournisseur cloud, l’allocation des ressources nécessaires à l'exécution de votre charge de travail. Ce qui permet une mise à l’échelle quasi infinie et instantanée. 

Pour faire simple, si vous recevez 20000 requêtes en même temps (Suite à un passage télé par exemple) alors le fournisseur cloud met à disposition de votre application les ressources nécessaires en face de cette charge afin de pouvoir l’absorber durant le temps nécessaire au traitement de cette dernière.

  • Économie

Contrairement aux services d’hébergement classiques ou de cloud computing standards, avec le Serverless, fini de faire tourner des serveurs en permanence (même quand aucune ressource n’est nécessaire) et de payer pour ce service. 

Avec une Architecture Serverless, les ressources nécessaires sont allouées et mises à l’échelle automatiquement, par le fournisseur de service cloud, en fonction de la charge de travail correspondante. 

Vous êtes ainsi facturé à la milliseconde et la facturation s’arrête aussitôt la charge de travail réalisé.

  • Écologie

Si avec le Serverless vous ne payez que pour ce que vous consommez c’est simplement car vos applications ne sont lancées qu’en cas de besoin.

Concrètement, lorsqu’un événement déclenche l'exécution d’une tâche, alors les ressources nécessaires se mettent en place pour exécuter cette charge de travail. Une fois le code exécuté vous n’avez plus besoin de ressources et ne faites donc tourner aucune machine. 

“Sans charge de travail votre infrastructure possède un bilan carbone à 0”.