Un site web gère mille utilisateurs. Puis un million. Tombe-t-il en panne ? La scalabilité est la capacité d'un système à gérer une charge de travail croissante. Elle peut s'accroître en ajoutant des ressources (scalabilité horizontale) ou en renforçant les ressources existantes (scalabilité verticale). Un système scalable ne s'effondre pas lorsque la demande augmente.
La mise à l'échelle verticale est plus simple : il suffit d'ajouter de la RAM, un processeur plus rapide ou un disque plus grand. Mais elle a ses limites : la RAM ne peut pas être ajoutée à l'infini. La mise à l'échelle horizontale est plus complexe : elle consiste à ajouter des machines et à répartir la charge. Elle nécessite des équilibreurs de charge, des bases de données distribuées et des services sans état. En revanche, elle offre une capacité de mise à l'échelle quasi illimitée.
Stratégies de mise à l'échelle
- Horizontalement : ajouter plus de serveurs
- Vertical : mise à niveau des serveurs existants
- Équilibrage de charge : répartir le trafic
- Mise en cache : réduire le travail répétitif
- Partitionnement : répartir les données entre les machines
La scalabilité ne se résume pas au matériel ; elle concerne avant tout l’architecture. Un système mal conçu ne pourra pas évoluer, quel que soit le nombre de serveurs ajoutés. Un système bien conçu peut passer d’une start-up à une plateforme mondiale. Les choix de conception effectués dès le départ déterminent son potentiel.
Comments
No comments yet. Be the first to share a thought.
Leave a comment