Profiter de l'évolutivité horizontale

Last reviewed 2026-10-27 UTC

Ce principe du pilier "Fiabilité" du Google Cloud Well-Architected Framework fournit des recommandations pour vous aider à utiliser l'évolutivité horizontale. En utilisant l'évolutivité horizontale, vous pouvez vous assurer que vos charges de travail dansGoogle Cloud peuvent évoluer efficacement et maintenir leurs performances.

Ce principe est pertinent pour le domaine d'intérêt de la définition du champ d'application de la fiabilité.

Présentation du principe

Réorganisez votre système en une architecture horizontale. Pour faire face à l'augmentation du trafic ou des données, vous pouvez ajouter des ressources. Vous pouvez également supprimer des ressources lorsqu'elles ne sont pas utilisées.

Pour comprendre l'intérêt du scaling horizontal, tenez compte des limites du scaling vertical.

Un scénario courant de scaling vertical consiste à utiliser une base de données MySQL comme base de données principale avec des données critiques. À mesure que l'utilisation de la base de données augmente, davantage de RAM et de processeur sont nécessaires. À terme, la base de données atteint la limite de mémoire de la machine hôte et doit être mise à niveau. Ce processus peut devoir être répété plusieurs fois. Le problème est que la croissance d'une base de données est limitée. Les tailles de VM ne sont pas illimitées. La base de données peut atteindre un point où il n'est plus possible d'ajouter des ressources.

Même si les ressources étaient illimitées, une VM de grande taille peut devenir un point de défaillance unique. Tout problème lié à la VM de base de données principale peut entraîner des réponses d'erreur ou une panne à l'échelle du système qui affecte tous les utilisateurs. Évitez les points de défaillance uniques, comme décrit dans Créer des systèmes disponibilité élevée grâce à la redondance des ressources.

En plus de ces limites de scaling, le scaling vertical a tendance à être plus coûteux. Le coût peut augmenter de manière exponentielle à mesure que des machines dotées d'une puissance de calcul et d'une mémoire plus importantes sont acquises.

En revanche, le scaling horizontal peut coûter moins cher. Le potentiel de scaling horizontal est pratiquement illimité dans un système conçu pour évoluer.

Recommandations

Pour passer d'une architecture à VM unique à une architecture horizontale à plusieurs machines, vous devez planifier soigneusement et utiliser les bons outils. Pour vous aider à réaliser un scaling horizontal, tenez compte des recommandations des sous-sections suivantes.

Utiliser des services gérés

Les services gérés éliminent le besoin de gérer manuellement le scaling horizontal. Par exemple, avec les groupes d'instances gérés (MIG) Compute Engine, vous pouvez ajouter ou supprimer des VM pour effectuer un scaling horizontal de votre application. Pour les applications conteneurisées, Cloud Run est une plate-forme sans serveur qui peut effectuer un scaling automatique de vos conteneurs sans état en fonction du trafic entrant.

Promouvoir la conception modulaire

Les composants modulaires et les interfaces claires vous aident à faire évoluer les composants individuels selon vos besoins, au lieu de faire évoluer l'ensemble de l'application. Pour en savoir plus, consultez Promouvoir la conception modulaire dans le pilier "Optimisation des performances".

Implémenter une conception sans état

Concevez des applications sans état, c'est-à-dire sans données stockées localement. Vous pouvez ainsi ajouter ou supprimer des instances sans vous soucier de la cohérence des données.