Zu verwendende Tools - AWS Präskriptive Leitlinien

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Zu verwendende Tools

k6

k6 ist ein kostenloses Tool, das Support, Hosting der Lastquelle und eine integrierte Weboberfläche zum Organisieren, Ausführen und Analysieren von Lasttests bietet.

k6 ist in Go geschrieben und wird als einzelne ausführbare Datei ausgeliefert. Es wird alle Kerne Ihres Quellsystems verwenden. Es verwendet eine Teilmenge von JavaScript , um komplexe Szenarien auszuführen, und es enthält Testprofile. Sie können komplexe Testszenarien erstellen JavaScript , die effizient ausgeführt werden. Die Ausgabe kann eine Zusammenfassung oder eine detaillierte Ausgabe für eine Reihe von Zielspeichern sein. Erweiterungen werden unterstützt, aber abgesehen von der offiziellen k6-Erweiterung gibt es nur wenige gut gepflegte Erweiterungen.

Die meisten Lasttests können von einem einzelnen Server aus ausgeführt werden, sofern der Server groß genug ist, wodurch ein komplexerer verteilter Lasttest vermieden wird.

Die Ergebnisse des Lasttests können für eine detailliertere Analyse an Amazon Managed Service for Prometheus CloudWatch, Amazon oder einen anderen Monitoring-Service weitergeleitet werden. Es ist auch möglich, Erfolgskriterien in den Code des Szenarios aufzunehmen, um ihn in Continuous Integration (CI)-Pipelines auszuführen.

Vegeta

Der Vegeta-Lasttest folgt einem anderen Konzept. Anstatt Parallelität zu definieren oder Ihr System zu belasten, definieren Sie eine bestimmte Rate. Das Tool erstellt diese Last dann unabhängig von den Reaktionszeiten Ihres Systems.

Dies ist eine hervorragende Möglichkeit, Staudruckszenarien oder das langfristige Verhalten von Backend-Prozessen zu untersuchen, bei denen Sie den Einfluss der Antwortzeiten und des Tests negieren möchten. Das Tool ist nicht in der Lage, sich komplex zu verhalten, aber Sie können eine beliebige Abfolge von Anfragen ausführen, ohne dass Informationen zwischen ihnen ausgetauscht werden müssen.

Vegeta kann auch als Bibliothek für Go-Anwendungen verwendet werden. Auf diese Weise können Sie Ihren eigenen Lasttest mit einem leistungsstarken Backend implementieren. Es könnte aber sinnvoller sein, ein anderes Tool zu verwenden, als Ihren eigenen Test zu implementieren.

Hey und ab

Hey und ab, die Apache-HTTP-Server-Benchmarking-Tools, sind grundlegende Tools, die Sie von der Befehlszeile aus verwenden können, um die angegebene Last auf einem einzelnen Endpunkt auszuführen. Dies ist der schnellste Weg, um Last zu erzeugen, wenn Sie über einen Server verfügen, auf dem die Tools ausgeführt werden können. Selbst ein lokaler Laptop ist leistungsfähig, obwohl er möglicherweise nicht leistungsfähig genug ist, um eine hohe Last zu erzeugen.

Apache JMeter

Apache Meter ist das erfahrene Kraftpferd. Im Laufe der Jahre ist Apache JMeter zuverlässiger geworden und hat zusätzliche Features hinzugefügt. Mit der grafischen Oberfläche können Sie komplexe Tests erstellen, ohne eine Programmiersprache zu kennen. Unternehmen wie BlazeMeter unterstützen Apache JMeter.

Verteiltes Auslastungstesten auf AWS

Distributed Load Testing auf der AWS Lösung unterstützt die Verwendung von benutzerdefinierten Apache JMeter-Skripten. Wenn Sie die AWS Lösung Distributed Load Testing on verwenden, können Sie Ihr Apache JMeter-Skript hochladen, um Ihre Tests in der Cloud auszuführen. Ein weiterer Vorteil ist die Ausgabeunterstützung. Sie können die Ereignisse in Time-Stream-Datenbanken streamen und darüber hinaus erweiterte Abfragen ausführen, sodass Sie einen detaillierten Einblick in Ihren gesamten Testlauf erhalten.