PERF05-BP04 Durchführen von Lasttests für die Workload - AWS Well-Architected Framework

PERF05-BP04 Durchführen von Lasttests für die Workload

Führen Sie für die Workload Lasttests durch, um sicherzustellen, dass sie die Produktionslast bewältigen kann, und identifizieren Sie Leistungsengpässe.

Typische Anti-Muster:

  • Sie führen Lasttests für einzelne Teile der Workload durch, aber nicht für die gesamte Workload.

  • Sie führen Lasttests in einer Infrastruktur durch, die sich von Ihrer Produktionsumgebung unterscheidet.

  • Sie führen Lasttests nur für die erwartete Last durch und nicht für noch größere Lasten, um mögliche künftige Probleme besser vorherzusehen.

  • Sie führen Lasttests durch, ohne sich auf die Amazon-EC2-Testrichtlinie zu beziehen und ein Formular „Event Submissions Form“ einzureichen. Dies führt dazu, dass Ihr Test nicht ausgeführt werden kann, da er wie ein Denial-of-Service-Ereignis aussieht.

Vorteile der Nutzung dieser bewährten Methode: Die Messung der Leistung im Rahmen eines Lasttests gibt Aufschluss darüber, wo bei zunehmender Last mit Auswirkungen zu rechnen ist. Auf diese Weise können Sie erforderliche Änderungen vorhersehen, bevor sie sich auf Ihre Workload auswirken.

Risikostufe bei fehlender Befolgung dieser bewährten Methode: Niedrig

Implementierungsleitfaden

Lasttests in der Cloud sind ein Prozess zur Messung der Leistung einer Cloud-Workload unter realistischen Bedingungen mit erwarteter Benutzerlast. Dieser Prozess beinhaltet die Bereitstellung einer produktionsähnlichen Cloud-Umgebung, die Verwendung von Lasttest-Tools zur Lastgenerierung und die Analyse von Metriken, um die Fähigkeit Ihrer Workload zu bewerten, mit einer realistischen Last umzugehen. Verwenden Sie für Lasttests synthetische oder bereinigte Produktionsdaten und entfernen Sie sensible oder personenbezogene Informationen. Führen Sie automatisch Lasttests als Teil Ihrer Bereitstellungs-Pipeline durch und vergleichen Sie die Ergebnisse mit vordefinierten KPIs und Schwellenwerten. Dieser Prozess hilft Ihnen dabei, die erforderliche Leistung weiterhin zu erreichen.

Implementierungsschritte

  • Testziele definieren: Identifizieren Sie die Leistungsaspekte Ihrer Workload, die Sie bewerten möchten, wie Durchsatz und Reaktionszeit.

  • Testtool auswählen: Wählen und konfigurieren Sie das Lasttest-Tool, das zu Ihrer Workload passt.

  • Umgebung einrichten: Richten Sie die Testumgebung auf der Grundlage Ihrer Produktionsumgebung ein. Mithilfe von AWS-Services können Sie Umgebungen im Produktionsmaßstab ausführen und damit Ihre Architektur testen.

  • Überwachung implementieren: Verwenden Sie Überwachungstools wie Amazon CloudWatch, um Metriken für die Ressourcen in Ihrer Architektur zu sammeln. Sie können auch benutzerdefinierte Metriken erfassen und veröffentlichen.

  • Szenarien definieren: Definieren Sie die Szenarien und Parameter der Lasttests (wie Testdauer und Anzahl der Benutzer).

  • Belastungstests durchführen: Führen Sie Testszenarien in großem Maßstab durch. Testen Sie Ihre Workload mithilfe der AWS Cloud, um zu ermitteln, an welcher Stelle sie nicht skalierbar ist oder ob die Skalierung nichtlinear erfolgt. Nutzen Sie beispielsweise Spot Instances, um kostengünstig Lasten zu erzeugen und Engpässe zu identifizieren, bevor diese in der Produktionsumgebung auftreten.

  • Testergebnisse analysieren: Analysieren Sie die Ergebnisse, um Leistungsengpässe und verbesserungswürdige Bereiche zu identifizieren.

  • Erkenntnisse dokumentieren und teilen: Dokumentieren Sie Erkenntnisse und Empfehlungen und erstellen Sie Berichte darüber. Teilen Sie diese Informationen mit Stakeholdern, um ihnen zu helfen, fundierte Entscheidungen über Strategien zur Leistungsoptimierung zu treffen.

  • Kontinuierliche Iteration: Lasttests sollten in regelmäßigen Abständen durchgeführt werden, insbesondere nach einer Systemänderung oder einem Systemupdate.

Ressourcen

Zugehörige Dokumente:

Zugehörige Videos:

Zugehörige Beispiele: