AccueilClientsExpertisesBlogOpen SourceContact

Bonne pratique

Mettre en place une architecture élastique

Ce que dit le référentiel

Dans la plupart des cas la charge subie par une application n'est pas constante au cours du temps. Par exemple il peut n'y avoir que peu, voire pas du tout d'utilisateurs connectés la nuit. Dans ce cas, il n'est pas nécessaire d'utiliser des infrastructures techniques aussi importantes aux heures creuses qu'aux heures de plus forte demande.

Grâce à la mutualisation des déploiements (voir la bonne pratique #89 « Utiliser des serveurs virtualisés »), en particulier sur le cloud, il est possible de modifier dynamiquement et automatiquement la taille de l'infrastructure en fonction de la charge. Cette modification peut obéir à une programmation horaire (par exemple éteindre la nuit les applications utilisées uniquement aux heures de bureau) ou se faire en réaction au nombre de requêtes : si la charge augmente on ajoute de nouvelles machines virtuelles, de nouvelles instances de l'application (conteneurs, processus ou fonctions serverless, ...), que l'on décommissionne quand elle baisse.

Des outils comme Docker permettent de créer des images de vos applications qui peuvent être facilement déployées ou décommissionnées par des outils d'orchestration comme Kubernetes. Les fournisseurs de Cloud proposent en général des services permettant de tirer profit de ces outils.

Les environnements de tests et d'expérimentation en particulier peuvent être éteints la nuit et les jours non ouvrés très facilement.

Mettre en place une architecture élastique permet de plus de faire des économies, puisque moins de ressources serveurs sont utilisées, et que celles-ci sont facturées.

Une architecture élastique a un coût de mise en place important en termes de charge de travail et de complexité accrue de la solution. Si votre application a peu de charge ou que celle-ci varie peu, il n'est pas indispensable de la mettre en place.

Le "Référentiel d'écoconception web (REW)" est publié par GreenIT.fr dans le cadre des travaux du Collectif conception numérique responsable selon les termes de la licence Creative Commons Attribution.

Plus d'informations sur collectif.greenit.fr et ecoconceptionweb.com.

Notre avis

Nous utilisons des instances managées, permettant une adaptation automatique de la capacité de votre infrastructure en fonction des variations de charge. Lors des périodes de faible activité, comme la nuit, nous réduisons le nombre d'instances actives, limitant ainsi la consommation de ressources.

L'intégration de outils d'orchestration tels que Kubernetes permet une gestion dynamique des conteneurs, créant ou supprimant des instances selon les besoins en temps réel. Cette approche optimise non seulement l'utilisation des serveurs, mais contribue aussi à une réduction des coûts et une empreinte environnementale moindre.

Règle de validation

Le nombre de ressources réservées inutilement quand la charge est faible doit être inférieur ou égal à 0

Ressources économisées

Requêtes
Bonne pratique précédente
Précédent
Bonne pratique suivante
Suivant
18 avenue Parmentier
75011 Paris
+33 1 43 57 39 11
hello@premieroctet.com

Suivez nos aventures

GitHub
X (Twitter)
Flux RSS

Naviguez à vue