Freigeben über


Architekturstrategien für Leistungstests

Gilt für die Empfehlung zur Leistungseffizienz der Azure Well-Architected Framework-Checkliste:

PE:06 Testen Sie die Leistung. Führen Sie regelmäßige Tests in einer Umgebung durch, die der Produktionsumgebung entspricht. Vergleichen Sie die Ergebnisse mit den Leistungszielen und der Leistungs-Benchmark.

In diesem Leitfaden werden die Empfehlungen für Tests beschrieben. Leistungstests helfen Ihnen, die Funktionalität einer Workload in verschiedenen Szenarien zu bewerten. Es umfasst tests der Reaktionszeit, des Durchsatzes, der Ressourcenauslastung und der Stabilität, um sicherzustellen, dass die Workload ihren Leistungsanforderungen entspricht.

Tests helfen, Leistungsprobleme zu verhindern. Außerdem wird sichergestellt, dass Ihre Arbeitsauslastung die Vereinbarungen auf Serviceebene erfüllt. Ohne Leistungstests kann eine Workload Leistungsbeeinträchtigungen erleben, die häufig verhindert werden können. Die Arbeitsauslastungsleistung kann von Leistungszielen und etablierten Basiswerten abdriften.

Definitionen

Begriff Definition
Chaostests Ein Leistungstest, der die Resilienz und Stabilität eines Systems testen soll, indem zufällige und unvorhersehbare Fehler oder Störungen bewusst eingeführt werden.
Auslastungstest Ein Leistungstest, der die Systemleistung unter typischer und schwerer Belastung misst.
Leistungsbasislinie Eine Reihe von Metriken, die das Verhalten einer Workload unter normalen Bedingungen darstellen, die durch Tests überprüft werden.
Stresstest Ein Leistungstest, der ein System überlastet, bis es unterbrochen wird.
Synthetischer Test Ein Leistungstest, der Benutzeranforderungen in einer Anwendung simuliert.

Mithilfe von Leistungstests können Sie messbare Daten für eine Workload sammeln. Wenn Sie Tests frühzeitig genug ausführen, helfen sie Ihnen auch beim Erstellen von Workloads an die richtigen Spezifikationen. Sie sollten Leistungstests so früh wie möglich im Lebenszyklus der Softwareentwicklung durchführen. Frühe Tests ermöglichen es Ihnen, Leistungsprobleme früher in der Entwicklung abzufangen und zu beheben. Sie können einen Machbarkeitsnachweis (Proof of Concept, POC) verwenden, wenn Produktionscode nicht bereit ist.

Vorbereiten des Tests

Die Vorbereitung von Leistungstests bezieht sich auf das Einrichten und Anordnen der Ressourcen, Konfigurationen und Testszenarien, die Sie zum effektiven Durchführen von Leistungstests benötigen.

Definieren von Akzeptanzkriterien

Akzeptanzkriterien geben die Leistungsanforderungen an, die eine Workload erfüllen muss, damit sie als akzeptabel oder erfolgreich angesehen werden kann. Definieren Sie Kriterien, die den Leistungszielen entsprechen.

Überprüfen Sie die Leistungsziele. Leistungsziele definieren Ihre gewünschte Leistungsstufe für Ihre Workload. Überprüfen Sie die Für die Workload festgelegten Leistungsziele. Leistungsziele sind Metriken, die Antwortzeit, Durchsatz, Ressourcenauslastung oder andere relevante Leistungsindikatoren umfassen können. Sie können z. B. ein Ziel für ihre Reaktionszeit haben, um unter einem bestimmten Schwellenwert zu liegen, z. B. weniger als 2 Sekunden.

Definieren Sie Akzeptanzkriterien. Übersetzen Sie die Leistungsziele in bestimmte Akzeptanzkriterien, mit denen Sie die Leistung Ihrer Workload bewerten können. Angenommen, Ihr Leistungsziel für die Reaktionszeit beträgt 2 Sekunden oder weniger. Ihr Akzeptanzkriterium könnte die durchschnittliche Reaktionszeit der Workload kleiner als 2 Sekunden sein. Verwenden Sie diese Akzeptanzkriterien, um zu bestimmen, ob die Workload das gewünschte Leistungsniveau erfüllt.

Wenn Sie Akzeptanzkriterien definieren, ist es wichtig, sich auf Benutzer und ihre Erwartungen zu konzentrieren. Akzeptanzkriterien tragen dazu bei, dass die gelieferte Arbeit den Anforderungen und Anforderungen des Benutzers entspricht. Beachten Sie die folgenden Überlegungen für die Einbeziehung der Benutzerperspektive in Akzeptanzkriterien:

  • Benutzeranforderungen: Verstehen der Benutzeranforderungen und -ziele für die Workload. Überlegen Sie, wie die Workload ausgeführt werden soll, um diese Anforderungen zu erfüllen.

  • Benutzererfahrung: Definieren Sie Akzeptanzkriterien, die die gewünschte Benutzeroberfläche erfassen. Umfassen Faktoren wie Antwortzeit, Benutzerfreundlichkeit, Barrierefreiheit und allgemeine Zufriedenheit.

  • Funktionale Anforderungen: Adressieren Sie die spezifische Funktionalität, die der Benutzer in der Workload erwartet. Definieren Sie Akzeptanzkriterien für diese funktionalen Anforderungen, um sicherzustellen, dass sie erfüllt sind.

  • Anwendungsfälle: Berücksichtigen Sie unterschiedliche Szenarien oder Anwendungsfälle, auf die der Benutzer möglicherweise stoßen kann. Definieren Sie Akzeptanzkriterien basierend auf diesen Anwendungsfällen, um die Leistung der Workload in realen Situationen zu überprüfen.

Legen Sie Akzeptanzschwellenwerte fest. Ermitteln Sie die Schwellenwerte innerhalb der Akzeptanzkriterien, die angeben, ob die Workload die Leistungsziele erfüllt. Diese Schwellenwerte definieren den zulässigen Leistungsbereich für jede Metrik. Angenommen, das Akzeptanzkriterium für die Antwortzeit beträgt weniger als 2 Sekunden. Sie können den Schwellenwert auf 2,5 Sekunden festlegen. Diese Stufe gibt an, dass jede Reaktionszeit über 2,5 Sekunden als Leistungsproblem betrachtet wird.

Definieren sie übergebende Kriterien. Legen Sie die Kriterien für die Bestimmung fest, ob die Workload den Leistungstest bestanden oder fehlgeschlagen hat. Sie können festlegen, dass sie alle Akzeptanzkriterien erfüllen oder einen bestimmten Prozentsatz davon erreichen.

Auswählen des Testtyps

Um den richtigen Leistungstest auszuwählen, ist es wichtig, den Test mit Ihren Akzeptanzkriterien abzustimmen. Die Akzeptanzkriterien definieren die Bedingungen, die erfüllt werden müssen, damit eine Anforderung oder ein Fehlerkorrektur berücksichtigt werden kann. Leistungstests sollten darauf abzielen, zu überprüfen, ob eine Arbeitsauslastung diese Akzeptanzkriterien erfüllt und unter bestimmten Bedingungen erwartungsgemäß ausgeführt wird. Durch das Ausrichten des Leistungstesttyps an die Akzeptanzkriterien wird sichergestellt, dass der Test den Leistungserwartungen entspricht, die die kriterien definieren.

  • Verstehen der Akzeptanzkriterien. Überprüfen Sie die Akzeptanzkriterien für die Anforderung oder Fehlerkorrektur. Die Kriterien beschreiben die spezifischen Bedingungen und Funktionen, die erfüllt werden sollen.

  • Identifizieren sie relevante Leistungsmetriken. Ermitteln Sie anhand der Akzeptanzkriterien die Leistungsmetriken, die für die Erreichung der gewünschten Ergebnisse von entscheidender Bedeutung sind. Wenn sich die Akzeptanzkriterien beispielsweise auf die Antwortzeit konzentrieren, kann die Priorisierung der Auslastungstests geeignet sein.

  • Wählen Sie einen geeigneten Testtyp aus. Bewerten Sie die verfügbaren Testtypen, und wählen Sie den Typ aus, der am besten mit den identifizierten Leistungsmetriken und Akzeptanzkriterien übereinstimmt.

Die folgende Tabelle enthält ein Beispiel für Testtypen und deren Anwendungsfälle.

Testtyp Description Anwendungsfall
Auslastungstests Simulieren Sie realistische Benutzerlasten, um zu messen, wie Ihre Workload unter erwarteten Spitzenlasten ausgeführt wird. Bestimmt die Ladetoleranz.
Stresstests Verschieben Sie Ihre Workload über die normalen Grenzwerte hinaus, um ihre Bruchpunkte zu identifizieren und ihre Fähigkeit zur Wiederherstellung zu messen. Bestimmt Resilienz und Robustheit.
Einweichtests (Ausdauertests) Führen Sie Ihre Workload unter anhaltenden hohen Lasten für einen längeren Zeitraum aus, um Leistungsbeeinträchtigungen, Speicherverluste oder Ressourcenprobleme zu identifizieren. Wertet Stabilität und Zuverlässigkeit im Laufe der Zeit aus.
Spitzentests Simulieren Sie plötzliche Erhöhungen der Benutzerlast, um zu beurteilen, wie Ihre Workload abrupte Änderungen der Nachfrage verarbeitet. Misst die Fähigkeit, die Leistung während der Spitzenzeiten zu skalieren und aufrechtzuerhalten.
Kompatibilitätstests Testen Sie die Leistung Ihrer Workload auf verschiedenen Plattformen, Browsern oder Geräten. Stellt eine konsistente Leistung in verschiedenen Umgebungen sicher.

Priorisieren Sie Ihre ausgewählten Testtypen basierend auf den Merkmalen und Anforderungen Ihrer Workload. Berücksichtigen Sie Faktoren wie die Kritischität von Leistungsmetriken, Benutzererwartungen, Geschäftsprioritäten und bekannte Probleme oder Sicherheitsrisiken.

Auswählen von Testtools

Wählen Sie geeignete Tools basierend auf der Art der Leistungstests aus, die Sie ausführen möchten. Bewerten sie die Infrastruktur, Ressourcen und Einschränkungen der Testumgebung. Wählen Sie Testtools aus, die die gewünschten Testtypen unterstützen, und stellen Sie die erforderlichen Funktionen für Überwachung, Messung, Analyse und Berichterstellung bereit.

Ein Tool zur Anwendungsleistungsüberwachung (Application Performance Monitoring, APM) bietet umfassende Einblicke in Anwendungen und ist ein wesentliches Testtool. Es hilft Ihnen, einzelne Transaktionen nachzuverfolgen und ihre Pfade über verschiedene Workload-Dienste zuzuordnen. Nach dem Testen sollten Sie das APM-Tool verwenden, um Testdaten anhand Ihrer Leistungsbasis zu analysieren und zu vergleichen.

Verwenden Sie Profilerstellungstools, um Leistungsengpässe in Ihrem Code zu identifizieren. Die Profilerstellung hilft dabei, Bereiche des Codes zu identifizieren, die die meisten Ressourcen verbrauchen und Optimierung benötigen. Es bietet Einblicke in die Ausführungszeit und die Speichernutzung verschiedener Teile des Codes.

Mit den folgenden Schritten können Sie die entsprechenden Testtools auswählen:

  • Ermitteln der Testanforderungen. Beginnen Sie damit, die spezifischen Anforderungen Ihrer Leistungstests zu verstehen. Berücksichtigen Sie verschiedene Faktoren:

    • Der Typ der Arbeitsauslastung
    • Leistungsmetriken, die gemessen werden sollen, z. B. Antwortzeit und Durchsatz
    • Die Komplexität der Workloadarchitektur
    • Die Testumgebung, z. B. cloudbasiert, lokal oder hybrid
  • Forschungstesttools. Führen Sie Recherchen durch, um Leistungstesttools zu identifizieren, die Ihren Anforderungen entsprechen. Erwägen Sie kommerzielle und Open-Source-Tools, die auf dem Markt verfügbar sind. Suchen Sie nach Tools, die Ihre gewünschten Arten von Leistungstests unterstützen, z. B. Auslastungstests oder Stresstests, und stellen Features zum Messen von Leistungsmetriken bereit.

  • Auswerten von Toolfeatures. Bewerten Sie die Features, die jedes Testtool bereitstellt. Suchen Sie nach Funktionen wie simulation des realistischen Benutzerverhaltens und der Skalierbarkeit, um große Benutzerlasten zu bewältigen. Erwägen Sie die Unterstützung verschiedener Protokolle und Technologien, die Integration in andere Testtools oder Frameworks sowie Berichterstellungs- und Analysefunktionen.

  • Berücksichtigen Sie Kompatibilität und Integration. Ermitteln Sie die Kompatibilität der Testtools mit Ihrer vorhandenen Infrastruktur und Technologien. Stellen Sie sicher, dass die Tools einfach in Ihre Testumgebung integriert werden können und mit der erforderlichen Arbeitsauslastung für die Überwachung und Analyse kommunizieren können.

  • Kosten und Lizenzierung auswerten. Bewerten Sie die Kostenstruktur und die Lizenzierungsbedingungen, die den Testtools zugeordnet sind. Berücksichtigen Sie Faktoren wie die anfänglichen Investitionen, Wartungskosten und Supportkosten. Berücksichtigen Sie auch andere Lizenzierungsanforderungen, die von der Anzahl der Benutzer oder virtuellen Benutzer abhängen.

  • Führen Sie eine POC durch. Wählen Sie ein paar Tools aus, die basierend auf Ihrer Auswertung die am besten geeignete sind. Führen Sie einen kleinen POC durch, um die Benutzerfreundlichkeit, Features und Effektivität der Tools in Ihrem spezifischen Testszenario zu überprüfen.

  • Erwägen Sie Support und Schulung. Bewerten Sie die Support- und Schulungsstufe, die der Anbieter oder die Community des Tools bereitstellt. Ermitteln Sie die Verfügbarkeit von Dokumentations-, Lernprogrammen und technischen Supportkanälen, um probleme oder Probleme zu unterstützen, die während des Testprozesses auftreten können.

Erstellen von Testszenarien

Das Erstellen von Testszenarien bezieht sich auf den Prozess des Entwerfens bestimmter Situationen oder Bedingungen, die zum Testen der Leistung einer Workload geeignet sind. Testszenarien werden erstellt, um realistische Benutzerverhaltens- und Arbeitsauslastungsmuster zu emulieren. Diese Szenarien bieten eine Möglichkeit für Leistungstester, zu bewerten, wie die Workload unter verschiedenen Bedingungen ausgeführt wird.

Testszenarien ermöglichen es, verschiedene Workloadmuster zu replizieren, z. B. gleichzeitiger Benutzerzugriff, Spitzenlastzeiten oder bestimmte Transaktionssequenzen. Indem Sie die Workload unter verschiedenen Arbeitsauslastungsmustern testen, können Sie Leistungsengpässe identifizieren und die Ressourcenzuordnung optimieren.

  • Definieren sie das Benutzerverhalten. Emulieren Sie realistische Benutzerverhaltens- und Arbeitsauslastungsmuster, indem Sie die Schritte und Aktionen identifizieren, die Benutzer ausführen, wenn sie mit der Workload interagieren. Erwägen Sie Aktivitäten wie das Anmelden, das Durchführen von Suchvorgängen, das Senden von Formularen oder den Zugriff auf bestimmte Features. Unterteilen Sie jedes Szenario in bestimmte Schritte und Aktionen, die die Interaktion des Benutzers mit der Workload darstellen. Sie können das Navigieren durch Seiten, das Ausführen von Transaktionen oder die Interaktion mit verschiedenen Elementen der Workload einschließen.

  • Bestimmen der Datenbeteiligung. Identifizieren Sie die testdaten, die zum Ausführen der Testszenarien erforderlich sind. Sie können das Erstellen oder Generieren realistischer Datensätze einschließen, die verschiedene Szenarien, Benutzerprofile oder Datenvolumes darstellen. Stellen Sie sicher, dass die Testdaten vielfältig sind und verschiedene Anwendungsfälle abdeckt, um eine umfassende Leistungsbewertung bereitzustellen.

  • Entwerfen von Testskripts. Erstellen Sie Testskripts, die die Ausführung der definierten Testszenarien automatisieren. Testskripts bestehen in der Regel aus einer Abfolge von Aktionen, HTTP-Anforderungen oder Interaktionen mit Workload-APIs oder Benutzeroberflächen. Verwenden Sie Leistungstesttools oder Programmiersprachen, um die Skripts zu schreiben, und berücksichtigen Sie Faktoren wie Parametrisierung, Korrelation und dynamische Datenverarbeitung. Überprüfen Sie die Testskripts auf Richtigkeit und Funktionalität. Debuggen Sie alle Probleme, z. B. Skriptfehler, fehlende oder falsche Aktionen oder datenbezogene Probleme. Die Überprüfung von Testskripts ist entscheidend, um eine genaue und zuverlässige Ausführung von Leistungstests zu gewährleisten.

  • Konfigurieren Sie Testvariablen und Parameter. Konfigurieren Sie Variablen und Parameter in Testskripts, um Variabilität einzuführen und reale Szenarien zu simulieren. Schließen Sie Parameter wie Benutzeranmeldeinformationen, Eingabedaten oder Randomisierung ein, um verschiedene Benutzerverhalten und Workloadantworten nachzuahmen.

  • Skripts iterativ verfeinern. Verfeinern und verbessern Sie Testskripts kontinuierlich basierend auf Feedback, Testergebnissen oder sich ändernden Anforderungen. Erwägen Sie, Skriptlogik, Parametrisierung und Fehlerbehandlung zu optimieren oder zusätzliche Überprüfungen und Prüfpunkte hinzuzufügen.

Konfigurieren der Testumgebung

Das Konfigurieren einer Testumgebung bezieht sich auf den Prozess der Einrichtung der Infrastruktur-, Software- und Netzwerkkonfigurationen, die Sie zum Erstellen einer Umgebung benötigen, die Ihrer Produktionsumgebung ähnlich ist.

Um Ihre Testumgebung so einzurichten, dass die Leistungseffizienz gesteigert wird, schließen Sie die folgenden Schritte in Ihren Konfigurationsprozess ein:

  • Spiegeln Sie Ihre Produktionsumgebung. Richten Sie Ihre Testumgebung so ein, dass sie ihrer Produktionsumgebung ähnlich ist. Berücksichtigen Sie Faktoren wie Infrastrukturkonfiguration, Netzwerkeinstellungen und Softwarekonfigurationen. Ziel ist es, sicherzustellen, dass die Leistungstestergebnisse repräsentativ für reale Bedingungen sind.

  • Stellen Sie ausreichende Ressourcen bereit. Weisen Sie der Testumgebung angemessene Ressourcen wie CPU, Arbeitsspeicher und Speicherplatz zu. Stellen Sie sicher, dass die verfügbaren Ressourcen die erwartete Arbeitsauslastung verarbeiten und genaue Leistungsmessungen bereitstellen können.

  • Replizieren von Netzwerkbedingungen. Konfigurieren Sie die Netzwerkeinstellungen in der Testumgebung, um die erwarteten Netzwerkbedingungen während der tatsächlichen Workloadbereitstellung zu replizieren. Sie müssen Bandbreite, Latenz und Netzwerkprotokolle einschließen.

  • Installieren und Konfigurieren von Abhängigkeiten. Installieren Sie die Software, Bibliotheken, Datenbanken und andere Abhängigkeiten, die für die ordnungsgemäße Ausführung der Workload erforderlich sind. Konfigurieren Sie diese Abhängigkeiten so, dass sie der erwarteten Produktionsumgebung entsprechen.

Kompromiss: Es gibt Kosten für die Aufrechterhaltung separater Testumgebungen, Speichern von Daten, Verwenden von Tools und Ausführen von Tests. Kennen Sie die Kosten für Leistungstests, und finden Sie eine Möglichkeit, Ausgaben zu optimieren.

Risiko: Produktionsdaten können vertrauliche Informationen enthalten. Ohne eine robuste Scrubbing- und Maskierungsstrategie riskieren Sie, dass vertrauliche Daten verloren gehen, wenn Sie Produktionsdaten für Tests verwenden.

Durchführen der Tests

Führen Sie die Leistungstests mithilfe des ausgewählten Testtools aus. Tests beinhalten das Messen und Aufzeichnen von Leistungsmetriken, die Überwachung des Zustands und das Erfassen von Leistungsproblemen, die auftreten.

Überwachen und Erfassen von Leistungsmetriken wie Reaktionszeit, Durchsatz, CPU- und Arbeitsspeicherauslastung und anderen relevanten Indikatoren.

Verwenden Sie die definierten Testszenarien, um die Workload unter den erwarteten Lasten zu setzen. Führen Sie Tests unter diesen unterschiedlichen Lastbedingungen durch. Verwenden Sie z. B. Ebenen wie normal, Höchststand und Stress, um das Verhalten der Workload in verschiedenen Szenarien zu analysieren.

Analysieren der Ergebnisse

Die Analyse der Testergebnisse umfasst die Untersuchung der gesammelten Daten und Metriken aus den Leistungstests, um Einblicke in die Leistung der Workload zu erhalten. Ziel ist es, Leistungsprobleme zu identifizieren und das Feedback zu verwenden, um Prioritäten in der Anwendungsentwicklung anzupassen. Die folgenden Aktionen sind die wichtigsten Schritte zum Analysieren von Testergebnissen.

Überprüfen Sie Leistungsmetriken. Sehen Sie sich die Leistungsmetriken an, die Sie während der Leistungstests sammeln, z. B. Antwortzeiten, Durchsatz, Fehlerraten, CPU- und Arbeitsspeicherauslastung und Netzwerklatenz. Analysieren Sie diese Metriken, um die Gesamtleistung der Workload zu verstehen.

  • Identifizieren von Engpässen. Bewerten Sie die Leistungsmetriken, um Engpässe oder Bereiche ineffizienter Leistung zu identifizieren. Die Auswertung kann hohe Reaktionszeiten, Ressourceneinschränkungen, Datenbankprobleme, Netzwerklatenz und Skalierbarkeitseinschränkungen umfassen. Durch das Anheften der Ursachen dieser Engpässe können Sie Leistungsverbesserungen priorisieren.

  • Korrelieren sie Metriken. Bewerten Sie die Beziehungen und Korrelationen zwischen verschiedenen Leistungsmetriken. Analysieren Sie beispielsweise, wie sich eine erhöhte Auslastung oder Ressourcenauslastung auf Die Reaktionszeiten auswirkt. Das Verständnis dieser Korrelationen kann wertvolle Einblicke in das Arbeitsauslastungsverhalten unter verschiedenen Bedingungen bieten. Suchen Sie im Laufe der Zeit nach Mustern und Trends in den Leistungsdaten. Analysieren Sie die Leistung unter verschiedenen Ladestufen oder während bestimmter Zeiträume. Das Erkennen von Trends kann dazu beitragen, saisonale Abweichungen, Spitzenauslastungszeiten oder wiederkehrende Leistungsprobleme zu identifizieren.

Bewertung der Akzeptanzkriterien. Vergleichen Sie die Wiederholungsergebnisse mit den vordefinierten Akzeptanzkriterien und Leistungszielen. Bewerten Sie, ob die Workload den gewünschten Leistungsstandards entspricht. Wenn die Workload die Akzeptanzkriterien nicht erfüllt, untersuchen und verfeinern Sie die Optimierungen weiter.

Durchlaufen und verfeinern Sie die Analyse. Nehmen Sie bei Bedarf weitere Anpassungen und Verbesserungen vor. Verwenden Sie die gesammelten Daten und Metriken, um bestimmte Leistungsprobleme zu diagnostizieren. Die Diagnose kann die Ablaufverfolgung über die Workloadkomponenten, das Untersuchen von Protokolldateien, die Überwachung der Ressourcennutzung oder die Analyse von Fehlermeldungen umfassen. Vertiefen Sie die Daten, um die zugrunde liegenden Ursachen von Leistungsproblemen zu verstehen.

Basierend auf der Analyse der Testergebnisse priorisieren Sie identifizierte Leistungsprobleme, und implementieren Sie die erforderlichen Verbesserungen. Die Verbesserungen können das Optimieren von Code, das Optimieren von Datenbankabfragen, die Verbesserung von Zwischenspeicherungsmechanismen und das Optimieren von Netzwerkkonfigurationen umfassen.

Einrichten von Basisplanen

Basispläne stellen einen Referenzpunkt zum Vergleichen von Leistungsergebnissen im Laufe der Zeit bereit. Basispläne sollten aussagekräftige Momentaufnahmen der Workloadleistung sein – Sie müssen nicht jeden Test als Basisplan verwenden.

Berücksichtigen Sie die Workloadziele und Dokumentleistungsmomentaufnahmen, mit denen Sie im Laufe der Zeit lernen und optimieren können. Verwenden Sie diese Basiswerte als Benchmark für zukünftige Leistungstests, und verwenden Sie sie, um Beeinträchtigungen oder Verbesserungen zu identifizieren.

Führen Sie die folgenden Schritte aus, um Basispläne für Leistungstests einzurichten und als Benchmark für zukünftige Leistungstests zu verwenden:

  • Identifizieren sie Leistungsmetriken. Ermitteln Sie die spezifischen Leistungsmetriken, die Sie messen und nachverfolgen möchten. Beispiele sind:

    • Antwortzeit oder wie schnell die Workload auf Anforderungen reagiert.
    • Durchsatz oder die Anzahl der Anforderungen, die pro Zeiteinheit verarbeitet werden.
    • Ressourcenauslastung, z. B. CPU, Arbeitsspeicher und Datenträgerauslastung.
  • Zeichnen Sie aussagekräftige Messungen auf. Zeichnen Sie die Leistungsmetriken auf, die Sie während des Tests als Basiswerte erhalten. Diese Messungen stellen den Ausgangspunkt dar, mit dem Sie zukünftige Leistungstests vergleichen.

  • Vergleichen Sie zukünftige Tests. Vergleichen Sie bei nachfolgenden Leistungstests die Leistungsmetriken mit den festgelegten Basiswerten und Schwellenwerten. Der Vergleich ermöglicht es Ihnen, verbesserungen oder Beeinträchtigungen der Leistung zu identifizieren.

Kontinuierliches Testen

Kontinuierliche Tests beinhalten die fortlaufende Überwachung und Verfeinerung Ihrer Tests. Kontinuierliche Tests helfen Ihnen dabei, konsistente und akzeptable Leistungsstufen aufrechtzuerhalten. Eine Workload sollte ein konsistentes und akzeptables Leistungsniveau im Verhältnis zum Basisplan bereitstellen. Sie sollten die Workload im Laufe der Zeit optimieren, um eine konsistente Leistung zu erzielen, die innerhalb der zulässigen Leistungsgrenzen liegt. Hier sind einige wichtige Methoden:

  • Legen Sie Beeinträchtigungsgrenzwerte fest. Definieren Sie numerische Schwellenwerte, die den Leistungsgrad angeben, der im Laufe der Zeit akzeptabel ist. Durch Festlegen dieser Grenzwerte können Sie Leistungsschwankungen überwachen und Warnungen erhalten, wenn die Leistung unter den definierten Schwellenwert fällt.

  • Qualitätssicherung einschließen. Integrieren Sie Leistungsanforderungen, z. B. CPU-Auslastung und maximale Anforderungen pro Sekunde, in den Qualitätssicherungsprozess. Behandeln Sie Leistungsanforderungen mit der gleichen Wichtigkeit wie funktionale Anforderungen. Dieser Prozess trägt dazu bei, sicherzustellen, dass die Workload die definierten Leistungsanforderungen erfüllt, bevor Sie sie in der Produktion bereitstellen.

  • Automatisieren sie die Benachrichtigung. In Liveumgebungen sind schnelle Erkennung und Reaktion von entscheidender Bedeutung. Richten Sie automatisierte Warnungssysteme ein, die die Leistungsbasislinie als Referenz verwenden. Wenn es eine erhebliche Abweichung bei der Leistung gibt, werden die erforderlichen Teams sofort benachrichtigt, um zu handeln.

  • Testen Sie Änderungen. Einige Leistungsprobleme können nur in einer Liveeinstellung manifestiert werden. Wenden Sie gründliche Testmethoden für vorgeschlagene Code- und Infrastrukturänderungen an. Verwenden Sie die Codeinstrumentation, um Einblicke in die Leistungsmerkmale der Anwendung zu erhalten, z. B. Hot-Pfade, Speicherzuweisungen und Garbage Collection. Durch diese Tests wird sichergestellt, dass alle eingeführten Änderungen die Leistung nicht über die zulässigen Grenzwerte hinaus beeinträchtigen.

Azure-Unterstützung

Führen Sie die Tests aus: Azure Pipelines ermöglicht es Ihnen, Leistungstests in Ihre CI/CD-Pipeline zu integrieren. Sie können Auslastungstests als Schritt in Ihre Pipeline integrieren, um die Leistung und Skalierbarkeit Ihrer Anwendungen zu überprüfen.

Azure Chaos Studio bietet Ihnen eine Möglichkeit, reale Fehler in Ihre Anwendung einzufügen, damit Sie kontrollierte Fehlereinfügungsexperimente ausführen können. Die Experimente helfen Ihnen, Ihre Cloudanwendung und Dienstresilienz zu messen, zu verstehen und zu verbessern.

Azure Load Testing ist ein Lastentestdienst, der eine hohe Auslastung für jede Anwendung generiert. Load Testing bietet Funktionen zum Automatisieren von Auslastungstests und zur Integration in Ihren kontinuierlichen Integrations- und Kontinuierlichen Übermittlungsworkflow (CI/CD). Sie können Testkriterien definieren, z. B. durchschnittliche Antwortzeit oder Fehlerschwellenwerte, und die Auslastungstests basierend auf bestimmten Fehlerbedingungen automatisch beenden. Load Testing bietet ein Dashboard, das Liveupdates und detaillierte Ressourcenmetriken von Azure-Anwendungskomponenten während eines Auslastungstests bereitstellt. Sie können die Testergebnisse analysieren, Leistungsengpässe identifizieren und mehrere Testläufe vergleichen, um Leistungsregressionen im Laufe der Zeit zu verstehen.

Analysieren der Ergebnisse: Azure Monitor ist eine umfassende Überwachungslösung zum Sammeln, Analysieren und Reagieren auf Telemetrie aus Ihrer Cloud und lokalen Umgebungen. Application Insights ist eine Erweiterung von Monitor, die APM-Features bereitstellt. Sie können Application Insights verwenden, um Anwendungen während der Entwicklung und tests und auch in der Produktion zu überwachen.

Kompromiss: Das Testen erfordert Zeit und Fähigkeiten, um die Betriebliche Effizienz zu beeinflussen.

Leistungsfähigkeitscheckliste

Lesen Sie die vollständigen Empfehlungen.