PERF05-BP04 Effectuer un test de charge de votre charge de travail
Effectuez un test de charge de votre charge de travail pour vérifier qu'elle peut supporter la charge de production et identifier les éventuels goulots d'étranglement en termes de performances.
Anti-modèles courants :
-
Vous testez les différentes parties et non la totalité de votre charge de travail.
-
Vous testez la charge sur une infrastructure qui n'est pas la même que votre environnement de production.
-
Vous n'effectuez le test de charge que pour la charge prévue sans aller au-delà, avec pour but de prévoir où vous pourriez rencontrer des problèmes à l'avenir.
-
Vous effectuez des tests de charge sans consulter la politique de test Amazon EC2
et en soumettant un formulaire de soumission d'événements simulés. Cela entraîne l'échec de votre test, car cela ressemble à un événement de déni de service.
Avantages liés au respect de cette bonne pratique : La mesure de vos performances dans le cadre d'un test de charge vous indiquera où vous serez affecté au fil de l'augmentation de la charge. Cela peut vous permettre d'anticiper les changements nécessaires avant qu'ils n'affectent votre charge de travail.
Niveau de risque exposé si cette bonne pratique n'est pas respectée : Faible
Directives d'implémentation
Les tests de charge dans le cloud sont un processus visant à mesurer les performances de la charge de travail cloud dans des conditions réalistes avec la charge utilisateur attendue. Ce processus implique la mise en service d'un environnement cloud de type production, l'utilisation d'outils de test de charge pour générer la charge et l'analyse de métriques pour évaluer la capacité de votre charge de travail à gérer une charge réaliste. Pour effectuer un test de charge, vous devez exécuter des versions de données de production factices ou légèrement altérées (supprimez les données sensibles ou les informations d'identification). Effectuez automatiquement des tests de charge dans le cadre de votre pipeline de livraison et comparez les résultats aux indicateurs de performance clés et aux seuils prédéfinis. Ce processus vous permet de continuer à atteindre les performances requises.
Étapes d'implémentation
-
Configurez l'environnement de test en fonction de votre environnement de production. Vous pouvez utiliser les services AWS pour exécuter des environnements à l'échelle de la production afin de tester votre architecture.
-
Choisissez et configurez l'outil de test de charge adapté à votre charge de travail.
-
Définissez les scénarios et les paramètres de test de charge (tels que la durée du test et le nombre d'utilisateurs).
-
Réalisez des scénarios de test à grande échelle. Utilisez le AWS Cloud pour tester votre charge de travail et découvrir où elle ne parvient pas à se dimensionner ou si elle évolue de manière non linéaire. Par exemple, utilisez les instances Spot pour générer des charges à faible coût et découvrir les goulots d'étranglement avant de les rencontrer en production.
-
Surveillez et enregistrez les métriques de performance (comme le débit et le temps de réponse). Amazon CloudWatch peut récupérer des métriques à partir des ressources de votre architecture. Vous pouvez également récupérer et publier des métriques personnalisées pour faire apparaître des métriques d'entreprise ou des métriques dérivées.
-
Analysez les résultats pour identifier les goulots d'étranglement en matière de performances et les domaines à améliorer.
-
Documentez et rendez compte du processus et des résultats des tests de charge.
Ressources
Documents connexes :
Vidéos connexes :
Exemples connexes :