Les caractéristiques de l’architecture serverless
Voir tous les articles

Les caractéristiques de l’architecture serverless

Introduction à l’architecture serverless1 : Sans hébergement2 : Stateless (sans état)3 : Élasticité4 : Architecture distribuée5 : Piloté par les événementsConclusion

L’architecture serverless, apparue en 2014, est un modèle d’exécution informatique dans le cloud qui fait de plus en plus parler de lui dans le monde IT. Le terme désigne la mise en place d’un système ou d’une application sans serveurs centralisés dédiés. Malgré l’absence de serveurs centralisés, le serverless permet de réaliser des tâches complexes, y compris celles des applications web à grande échelle.

Le principe : transférer la gestion et l’exploitation des serveurs au fournisseur cloud. Il suffit de téléverser son code et de laisser le fournisseur (Oracle Functions, AWS Lambda, Azure Functions, etc.) gérer le reste. Plus besoin de s’inquiéter de la montée en charge ou de payer pour des ressources inutilisées.

Selon un sondage O’Reilly récent, 40 % des entreprises ont adopté l’architecture serverless. Ce modèle séduit par son faible coût d’entrée et sa grande scalabilité. Dans cet article, nous allons d’abord définir l’architecture serverless, puis en explorer les principales caractéristiques.

Introduction à l’architecture serverless1 : Sans hébergement2 : Stateless (sans état)3 : Élasticité4 : Architecture distribuée5 : Piloté par les événementsConclusion

Introduction à l’architecture serverless

L’architecture serverless consiste à développer et déployer des applications et services sans avoir à gérer d’instances de serveurs. Vos applications tournent toujours sur des serveurs, mais ils sont entièrement gérés par le fournisseur. Plus besoin de provisionner, de dimensionner ou de maintenir les serveurs pour faire fonctionner vos applications, bases de données ou systèmes de stockage.

L’avantage principal : vos développeurs peuvent se concentrer sur le produit. Le serverless leur permet de se focaliser sur la création de valeur, sans se soucier de l’administration ou de la gestion des serveurs/cloud. La configuration réseau et la sécurité physique sont aussi prises en charge par le fournisseur.

Grâce à cette réduction de la charge opérationnelle, les développeurs gagnent du temps pour concevoir des solutions innovantes et fiables. Mais le serverless a d’autres caractéristiques, avantageuses ou non selon vos besoins.

Nous allons détailler cinq caractéristiques clés de l’architecture serverless :

1 : Sans hébergement

Le principal avantage du serverless est l’absence de gestion d’hébergement ou de serveurs. Il y a donc beaucoup moins de maintenance à effectuer. Plus besoin de mettre à jour, dépanner ou surveiller l’infrastructure, ni de patcher les serveurs comme dans les systèmes traditionnels.

En contrepartie, vous n’aurez plus accès aux métriques classiques de l’hébergement (RPS, PRT, ART, taux d’erreur), qui sont désormais gérées par le fournisseur. Il faudra apprendre à surveiller d’autres indicateurs et à optimiser différemment la performance.

2 : Stateless (sans état)

Le serverless propose notamment les Fonctions en tant que Service (FaaS), qui permettent de créer, exécuter et gérer des applications sans gérer de serveur.

Comme les conteneurs sont éphémères, rien ne peut être conservé en mémoire : tout est supprimé après exécution. L’absence d’état est donc une caractéristique fondamentale du serverless.

3 : Élasticité

Le serverless étant sans serveur et sans état, il offre une grande élasticité, idéale pour la scalabilité. Contrairement à l’administration classique, où il faut ajuster les ressources à la main, le serverless le fait automatiquement.

Cela élimine de nombreux problèmes d’allocation de ressources et peut générer des économies, car on ne paie que ce qu’on consomme.

Attention cependant à l’intégration avec d’anciens systèmes qui ne supportent pas cette élasticité : cela peut causer des pannes en aval. Il faudra anticiper ces situations si vous optez pour le serverless.

4 : Architecture distribuée

Le serverless implique une architecture distribuée : les données sont stockées côté Backend as a Service (BaaS), et tout est réparti sur plusieurs zones de disponibilité. Cela permet une haute disponibilité et une meilleure résilience en cas de panne d’une zone cloud.

Mais il faut aussi composer avec les compromis de cohérence propres à chaque fournisseur. Renseignez-vous sur les modèles de cohérence de chaque BaaS avant de choisir.

5 : Piloté par les événements

Le serverless est conçu pour exécuter des tâches en réaction à des événements. Chaque fonction ne s’exécute que lorsqu’elle est déclenchée par un événement précis.

Cette architecture favorise l’extensibilité (ajout de fonctionnalités) et réduit l’interdépendance entre composants. Mais elle peut aussi rendre le système plus complexe à diagnostiquer.

Conclusion

L’architecture serverless fait beaucoup parler d’elle. Elle en est encore à ses débuts, mais l’expérience accumulée permet déjà d’en tirer des enseignements pour optimiser les systèmes.

En connaissant mieux ses caractéristiques, avantages et inconvénients, vous pourrez choisir l’architecture la mieux adaptée à vos besoins.

Un projet en tête?