Dieser Blog wurde von Ashish Shah, Partner Director of Engineering, Azure Developer Experience, mitverfasst.
Wir kündigen die allgemeine Verfügbarkeit von Azure Load Testing an. Azure Load Testing ist ein vollständig verwalteter Lastentestdienst, der es Ihnen ermöglicht, hochskalige Last zu generieren, umsetzbare Erkenntnisse zu gewinnen und die Resilienz Ihrer Anwendungen und Dienste unabhängig davon sicherzustellen, wo sie gehostet werden. Entwickler, Tester und Entwicklungsteams können sie verwenden, um die Anwendungsleistung, Skalierbarkeit oder Kapazität zu optimieren.
Erste Schritte mit Azure Load Testing jetzt, indem Sie schnell einen Ladetest für Ihre Webanwendung mithilfe einer URL erstellen. Wenn Sie bereits Auslastungstests mit JMeter haben, können Sie ganz einfach loslegen, indem Sie vorhandene Apache JMeter-Testskripts wiederverwenden.
Erstellen von Resilienztests in Entwicklerworkflows
Unser Ziel bei Microsoft ist es, Entwicklern zu helfen, mehr mit weniger Aufwand zu erledigen. Wenn Leistungs-, Skalierbarkeits- oder Resilienzprobleme in der Produktion oder sogar in der Nähe der Produktion identifiziert werden, können sie extrem schwierig und kostspielig sein. Mit Azure Load Testing können Entwickler Probleme näher an der Codeerstellungszeit als Teil ihrer Entwicklerworkflows erfassen, um ihnen wertvolle Zeit und Energie zu sparen.
"Im Rahmen unserer Initiativen zur Qualitätsverschiebung nach links konnten die Cloud Ecosystem Security-Teams verhindern, dass mehrere eindeutige Ladefehler die Produktion erreichen, indem Produktionsbuilds mithilfe von Azure Load Testing als Teil unserer CI/CD-Pipeline giert werden. Die Serviceteams haben auch die Last von Azure Load Testing mit Fehlereinfügungsszenarien von Azure Chaos Studio kombiniert, um repliziert, die Ursache zu verursachen und zu verhindern, dass nicht glückliche Pfadszenarien, die schwer zu erfassen sind, reguläre Testframeworks verwenden. Zusammen mit der Validierung der Dienstresilienz hat Azure Load Testing dazu beigetragen, die Grenzen des verteilten Systems aufzudecken und uns Kosten zu sparen, indem nicht verwendete Ressourcen und Frameworks eliminiert werden."" -Microsoft Cloud Ecosystem Security Engineering-Team
"Das Azure Synapse-Team verwendet Azure Load Testing, um unterschiedliche Arbeitslastenebenen von hoher Parallelität bis hin zu großen Eingabedaten sequenzielle Ausführung für Synapse SQL Serverless-Endpunkte zu generieren. Mit der Flexibilität von JMeter können wir andere Dienste innerhalb eines Clusters starten/beenden, die verschiedene Fehler injizieren können, wodurch die Resilienz unseres Diensts wirklich getestet wird."" -Microsoft Azure Synapse Engineering-Team
Kosten entstehen nur für Ressourcen, die benötigt werden
Optimieren Sie Ihre Infrastruktur, und stellen Sie sicher, dass Ihre Anwendung und Ihre Dienste widerstandsfähig für starke Spitzen im Kundendatenverkehr sind. Nutzen Sie Azure Load Testing, um Ihre Infrastruktur vor der Produktion zu optimieren, und planen Sie den erwarteten Kundendatenverkehr, und zahlen Sie nur für das, was Sie benötigen. Nutzen Sie dann Azure Load Testing, um auf ungeplante Auslastungssteigerungen zu testen.
Abbildung 1: Einfaches Skalieren der Last in Azure Load Testing, um die Resilienz Ihrer Anwendungen und Dienste zu überprüfen.
Regressionstests
Für Azure-basierte Anwendungen sammelt Azure Load Testing detaillierte Ressourcenmetriken, um Leistungsengpässe in Ihren Azure-Anwendungskomponenten zu identifizieren. Sie können Regressionstests automatisieren, indem Sie Auslastungstests im Rahmen Ihres CI/CD-Worfklows (Continuous Integration/Continuous Deployment) ausführen.
Abbildung 2: Erstellen von Auslastungstests in Ihren Entwicklerworkflow mit Pass-/Fail-Kriterien.
Azure-spezifische Einblicke können Ihnen helfen, zu verstehen, wie sich unterschiedliche Ladeszenarien auf alle Teile Ihrer Anwendung auswirken, und Sie können Testergebnisse in verschiedenen Auslastungstests vergleichen, um Verhaltensänderungen im Laufe der Zeit zu verstehen.
Azure Load Testing erstellt Überwachungsdaten mithilfe von Azure Monitor, einschließlich Anwendungserkenntnissen und Containereinblicken, um Details aus den Azure-Diensten zu erfassen. Je nach Diensttyp sind verschiedene Metriken verfügbar. Die Anzahl der Datenbanklesevorgänge, der Typ der HTTP-Antworten oder der Ressourcenverbrauch von Containern. Sowohl clientseitige als auch serverseitige Metriken sind im Azure Load Testing-Dashboard verfügbar.
Abbildung 3: Abrufen von Leistungseinblicken über client- und Azure-Dienstseitige Metriken mit Azure Load Testing.
Aktivieren erweiterter Auslastungstests
Für komplexere Auslastungstests können Sie einen JMeter-basierten Ladetest, ein beliebtes Open-Source-Lade- und Leistungstool erstellen. Ihr Testplan kann beispielsweise aus mehreren Anwendungsanforderungen oder Eingabedaten und Parametern bestehen, um den Test dynamischer zu gestalten. Und wenn Sie bereits über JMeter-Testskripts verfügen, können Sie sie wiederverwenden, um Auslastungstests mit Azure Load Testing zu erstellen.
Abbildung 4: Übersicht über die Architektur von Azure Load Testing.
Was hat sich seit der Vorschau geändert?
Seit dem Debüt von Azure Load Testing haben wir mehrere neue Funktionen basierend auf Kundenfeedback aktiviert.
Schnelle Testerstellung
- Schnelle Testerstellung von Azure Load Testing mit URL. Mit der schnellen Testerstellung können Sie einen Ladetest ohne ein JMeter-Skript erstellen, sodass Sie Ihre URL in weniger als fünf Minuten einrichten, ausführen und testen können.
Azure SDK-Auslastungstestbibliotheken
- .NET Azure Load Testing Library
- Java Azure Load Testing Library
- JavaScript Azure Load Testing Library
- Python Azure Load Testing Library
JMeter-Funktionen
- Unterstützung für vom Benutzer angegebene JMeter-Eigenschaften. Unterstützung für vom Benutzer angegebene JMeter-Eigenschaften, wodurch Auslastungstests besser konfiguriert werden können.
- Aufteilen von Eingabedaten auf mehrere Testmodule. Wenn Sie CSV-Daten in Ihrem JMeter-Skript verwenden, können Sie die Eingabedaten parallel über mehrere Testmodule verarbeiten. Mit Azure Load Testing können Sie einen Test konfigurieren, um die Daten gleichmäßig auf alle Modulinstanzen aufzuteilen.
Authentifizierung, vom Benutzer verwaltete Identitäten und vom Kunden verwaltete Schlüssel
- Authentifizieren mit Clientzertifikaten. Mit Azure Load Testing können Sie jetzt Anwendungsendpunkte authentifizieren, die ein Clientzertifikat erfordern.
- Testen Sie private Endpunkte oder Anwendungen, die lokal gehostet werden. Mit Azure Load Testing können Sie private Anwendungsendpunkte oder Anwendungen, die Sie Lokal hosten, testen.
- Vom System zugewiesene und vom Benutzer zugewiesene verwaltete Identitäten. Azure Load Testing unterstützt jetzt sowohl vom System zugewiesene als auch vom Benutzer zugewiesene verwaltete Identitäten.
- Vom Kunden verwaltete Schlüssel. Unterstützung für Azure Load Testing für vom Kunden verwaltete Schlüssel.
Zusätzliche Metriken
- Zusätzliche clientseitige Metriken für Pass-/Fail-Kriterien. Mit Azure Load Testing können Sie Pass-/Fail-Kriterienmetriken nutzen, einschließlich zusätzlicher clientseitiger Metriken von Anforderungen pro Sekunde und Latenz.
- Anzeigen von Lastmodulmetriken. Die Möglichkeit zum Anzeigen von Modulintegritätsmetriken, um die Leistung des Testmoduls während der Ausführung zu verstehen, wodurch das Vertrauen in die Testergebnisse ermöglicht und die Testkonfiguration verbessert wird.
Compliance und regionale Verfügbarkeit
- Azure Load Testing ist HITRUST zertifiziert.
- Regionale Verfügbarkeit von Azure Load Testing. Azure Load Testing ist jetzt in 11 Regionen verfügbar. Australien Ost, Ostasien, Ost-USA, Ost-US2, Nordeuropa, Süd-Zentral-USA, Schweden Zentral, Vereinigtes Königreich, Westeuropa, West-US2 und West-USA3.
Erste Schritte mit Azure Load Testing
Sie können mit Azure Load Testing beginnen, indem Sie eine Azure Load Testing-Ressource im Azure-Portal erstellen. Schauen Sie sich die Dokumentation zu Azure Load Testing an, und erstellen Sie Ihren ersten Auslastungstest.
Weitere Informationen zu Den Preisdetails finden Sie auf der Azure Load Testing-Preisseite.
Sehen Sie sich die neue DevOps Lab-Episode "Was ist neu in Azure Load Testing?" an.
Azure Load Testing on DevOps Lab
Abbildung 5: Neuerungen in Azure Load Testing mit April Edwards und Nikita Nallamothu.
Feedback teilen
Wir freuen uns über unser Feedbackforum, von Ihnen zu hören.