PERF05-BP04 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 d’Amazon EC2
et sans soumettre de 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 d’exposition au risque 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 rendement clés et aux seuils prédéfinis. Ce processus vous permet de continuer à atteindre les performances requises.
Étapes d’implémentation
-
Définition de vos objectifs de test : identifiez les aspects de performance de votre charge de travail que vous souhaitez évaluer, tels que le débit et le temps de réponse.
-
Sélection d’un outil de test : choisissez et configurez l’outil de test de charge adapté à votre charge de travail.
-
Configuration de votre environnement : 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.
-
Mise en œuvre de la surveillance : utilisez des outils de surveillance tels qu’Amazon CloudWatch
pour collecter des métriques sur les ressources de votre architecture. Vous pouvez également collecter et publier des métriques personnalisées. -
Définition de des scénarios : 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).
-
Tests de charge : 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.
-
Analyse des résultats des tests : analysez les résultats pour identifier les goulots d’étranglement en matière de performances et les domaines à améliorer.
-
Documentation et partage des résultats : documentez et rendez compte des résultats et des recommandations. Partagez ces informations avec les parties prenantes pour les aider à prendre des décisions éclairées concernant les stratégies d’optimisation des performances.
-
Itération continuelle : les tests de charge doivent être effectués à une cadence régulière, en particulier après un changement ou une mise à jour du système.
Ressources
Documents connexes :
Vidéos connexes :
Exemples connexes :