Ce contenu est obsolète. Cette version du cadre Well-Architected se trouve désormais à l'adresse suivante: https://docs.aws.amazon.com/fr_fr/wellarchitected/2022-03-31/framework/performance-efficiency.html
PERF 1: Comment sélectionner l'architecture la plus performante ?
Plusieurs approches sont souvent nécessaires pour obtenir des performances optimales
sur une charge de travail. Les systèmes à l'architecture well-architected utilisent
plusieurs solutions et fonctions pour améliorer les performances.
Ressources
Introducing The Amazon Builders’ Library (DOP328)
Bonnes pratiques:
-
Comprendre les services et les ressources disponibles:
Découvrez et familiarisez-vous avec le vaste éventail de services et ressources disponibles
dans le cloud. Identifiez les services et options de configuration pertinents pour
votre charge de travail et apprenez à optimiser les performances.
-
Définition d'un processus pour les choix d'architecture:
Mobilisez l'expérience et l'expertise des ressources cloud internes ou faites appel
à des ressources externes, notamment les cas d'utilisation publiés, la documentation
appropriée ou des livres blancs pour définir un processus de choix de ressources et
services. Vous devez définir un processus qui encourage l'expérimentation et la définition
de points de référence avec les services qui pourraient être utilisés dans votre charge
de travail.
-
Décisions prises en tenant compte du facteur coût :
Le traitement des charges de travail doit souvent tenir compte du facteur coût. Utilisez
les contrôles de coûts internes pour sélectionner les types et tailles de ressources
en fonction des besoins en ressources prévus.
-
Utilisation de stratégies ou d'architectures de référence:
Optimisez les performances et l'efficacité en évaluant les stratégies internes et
les architectures de référence existantes, ainsi qu'en utilisant votre analyse pour
sélectionner les services et les configurations pour votre charge de travail.
-
Utilisation des conseils de votre fournisseur de cloud ou d'un partenaire approprié:
Utilisez les ressources de l'entreprise cloud, notamment les architectes de solutions,
les services professionnels ou un partenaire approprié pour éclairer vos décisions.
Ces ressources peuvent vous aider à vérifier et à améliorer votre architecture pour
avoir des performances optimales.
-
Définition de points de référence pour charges de travail existantes:
Définissez des points de référence des performances d'une charge de travail existante
afin de comprendre ses performances sur le cloud. Utilisez les données collectées
à partir de points de référence pour éclairer vos décisions architecturales.
-
Test de charge de votre charge de travail:
Déployez votre dernière architecture de charge de travail dans au moyen de différents
types et tailles de ressources. Surveillez le déploiement pour capturer les métriques
de performance qui identifient les goulots d'étranglement ou des excédents de capacité.
Utilisez ces données de performance pour concevoir ou améliorer votre sélection d'architecture
et de ressources.
Plan d'amélioration
Comprendre les services et les ressources disponibles
Préparation de l'inventaire de vos charges de travail logicielles et de l'architecture
des services connexes: Faites un inventaire de votre charge de travail et choisissez la catégorie de produits
dont vous souhaitez en savoir plus.Regroupez des composants « Identifier la charge de travail » susceptibles d'être remplacés
par des services gérés pour améliorer les performances et réduire la complexité opérationnelle.
Définition d'un processus pour les choix d'architecture
Sélection d'une approche architecturale: Identifiez le type d'architecture qui répond à vos exigences de performance.Identifiez les contraintes telles que les supports de distribution (ordinateur de
bureau, applications Web ou mobiles, IoT), les exigences existantes et les intégrations.Identifiez les occasions de réutilisation, notamment la réfactorisation. Pour mieux
choisir une architecture, consultez d'autres équipes, schémas d'architecture et ressources,
notamment les architectes de solutions AWS, les schémas d'architecture de référence
AWS et les partenaires APN.
Définition des exigences en matière de performance: Utilisez l'expérience client pour identifier les métriques les plus importantes. Identifiez,
pour chaque métrique, la cible, la méthode d'évaluation et la priorité.Définissez l'expérience client. Consignez les exigences des clients en matière d'expérience
pratique, en particulier la façon dont ils évaluent la performance de la charge de
travail.Priorité à l'expérience pour les scénarios utilisateurs critiques Incluez des exigences
en matière de performance et implémentez des parcours utilisateur chiffrés pour vous
assurer que vous savez comment les narrations répondent à vos exigences.
Décisions prises en tenant compte du facteur coût
Optimisation des composants de charge de travail pour réduire les coûts: Trouvez la bonne taille des composants de la charge de travail et gagnez en élasticité
pour réduire les coûts et maximiser l'efficacité des composants.Identifiez les composants de charge de travail susceptibles d'être remplacés par des
services gérés le cas échéant : bases de données gérées, caches en mémoire et proxys
inverses.
Utilisation de stratégies ou d'architectures de référence
Déploiement de votre charge de travail à l'aide de stratégies existantes ou d'architectures
de référence: Intégrez les services à votre déploiement dans le cloud. Utilisez ensuite vos tests
de performance pour vous assurer que vous pouvez continuer à répondre à vos exigences
de performance.
Utilisation des conseils de votre fournisseur de cloud ou d'un partenaire approprié
Consultation des ressources AWS pour obtenir de l'aide: Les architectes de solutions et les services professionnels AWS prodiguent des conseils
pour la mise en œuvre de solutions.Les partenaires APN apportent une expertise AWS pour vous aider à gagner en agilité
et favoriser l'innovation au sein de votre entreprise.
Définition de points de référence pour charges de travail existantes
Surveillance des performances lors du développement: Mettez en œuvre des processus garantissant une visibilité des performances au fil
de l'évolution de votre charge de travail.
Intégration à votre pipeline de distribution: Exécutez automatiquement des tests de charge dans votre pipeline de distribution.
Comparez les résultats des tests aux indicateurs de performance clés (KPI) et aux
seuils prédéfinis afin de vous assurer que vous continuez à répondre aux exigences
de performance.
Test des parcours utilisateur: Pour effectuer un test de chargement, utilisez 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). Testez l'ensemble de votre architecture en utilisant les parcours
utilisateur répétés ou préprogrammés via votre application à grande échelle.
Test de charge de votre charge de travail
Validation de votre approche avec un test de charge: Faites un test de charge pour déterminer si votre concept répondez à vos exigences
de performance. Vous pouvez utiliser les services AWS pour exécuter des environnements
à l'échelle de la production afin de tester votre architecture. Étant donné que vous
ne payez pour l'environnement de test que lorsque cela est nécessaire, vous pouvez
effectuer des tests à grande échelle pour une fraction du coût d'utilisation d'un
environnement sur site. Stratégie de test Amazon EC2
Surveillance des métriques: 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 métiers ou des métriques dérivées. Utilisez CloudWatch ou
des solutions tierces pour définir des alarmes qui indiquent les dépassements de seuils.
Test à grande échelle: Le test de charge utilise votre charge de travail réelle afin que vous puissiez voir
les performances de votre solution dans un environnement de production. Vous pouvez
utiliser les services AWS pour exécuter des environnements à l'échelle de la production
afin de tester votre architecture. Étant donné que vous ne payez pour l'environnement
de test que lorsque cela est nécessaire, vous pouvez exécuter des tests à grande échelle
à un coût inférieur à celui du test dans un environnement sur site. Utilisez le cloud
AWS pour tester votre charge de travail afin de découvrir où elle ne parvient pas
à se mettre à l'échelle 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.