6 Weiterführende Aufarbeitung der Ergebnisse

6.5 Erstellen von Abfragen zur Visualisierung

Nach dem Import der Daten in die vorher entworfene Datenbank ist es nun möglich, Analysen über einen oder auch die Gesamtheit aller Tests durchzuführen.

Interessante Abfragen für die Analyse sind:

6.5.1 Allgemeine Abfragen zu einem Testdurchlauf

Diese Abfragen geben einen Überblick über die Durchführung des Testdurchlaufs. Es können globale Informationen, wie die Gesamtanzahl der simulierten Nutzer, den Datendurchsatz über den gesamten Testdurchlauf oder die Anzahl der erfolgreich und nicht erfolgreich durchgeführten Anfragen, abgefragt werden.

Eine Verfeinerung der globalen Information erhält man zum Beispiel dadurch, dass die Zeitpunkte einer erhöhten Last genauer herausgefiltert werden.

Diese Beispiele haben ihre Informationen aus den zusammengefassten Daten über alle Anfragen eines Testdurchlaufes bezogen. Im folgenden werden Anfragen erstellt, die Rückschlüsse auf die Performance von einzelnen Testfällen oder sogar einzelner Anfragen ermöglichen.

6.5.2 Anfragenspezifische Abfragen zu einem Testdurchlauf

Neben dem Anfragenamen wird auch der Testfall aufgeführt, zu der die Anfrage gehört. Verwenden mehrere Testfälle dieselben Anfragen, kann auch von den Testfällen abstrahiert und die Werte über die Testfälle hinaus zusammengefasst werden.



Auf der anderen Seite kann es auch sinnvoll, die Daten abhängig von den verwendeten Testfällen zu analysieren, aber auf die Unterscheidung der Anfragen zu verzichten.

Diese Beispiele zeigen einen kleinen Ausschnitt der möglichen Abfragen, die über die gesammelten Daten zu einem Testdurchlauf erstellt werden können. Jede dieser Abfragen führt zu einem Mehrwert an Informationen über die Performance des Systems. Die Identifikation von potentiellen Anfragen mit zu hohen Antwortzeiten oder der Vergleich der Antwortzeiten von verschiedenen Testfällen kann auf Schwachstellen im System oder in der Implementierung der Anwendung hinweisen.

Eine tiefergehende Analyse der Testdaten erfolgt in der Auswertung, der in vorangegangenen Kaptiteln beschriebenen Analyse mittels erstellter Hierarchien.

6.5.3 Abfragen zur Analyse mittels Hierarchien

Die meisten Lasttesttools ermöglichen eine Analyse nur über einen durchgeführten Performancetest, bieten aber nicht die Funktionalitäten, verschiedene Testdurchläufe mit unter-schiedlichen Testparametern zu vergleichen. Dies ist aber gerade für die Bottleneck-Analyse auf Basis von Hierarchien notwendig und zeigt den Mehrwert, der durch die Erstellung des Datenbankschemas erreicht wird.

In den folgenden Abschnitten werden Anfragen formuliert, die auf Basis des erstellten Datenbankschemas und der definierten Hierarchien zur erweiterten Analyse genutzt werden können.

6.5.3.1 Lokale Hierarchie

Mittels der Analyse mit Hilfe der lokalen Hierarchie ist ein Vergleich der Antwortzeiten der verschiedenen Zugänge in das System möglich. Dadurch wird erkennbar, ob Architektur-Komponenten, die zwischen den lokalen Schichten liegen, einen Engpass im System darstellen. Hierzu werden gleiche Testszenarios von verschiedenen Netzwerkeinstiegspunkten abgefragt.

Als Ergebnis erhält man die gewünschten Informationen sortiert nach den Netzwerkeinstiegspunkten. Große Abweichungen deuten auf einen Engpass, leichte Abweichungen lassen sich durch den längeren Weg der Daten entfernterer Einstiegspunkte bzw. durch das Netzwerkrauschen erklären.

Es lassen sich alle in den oberen Abschnitten definierten Anfragen auf die lokale Hierarchie anwenden. Dadurch wird es wiederum möglich, die Testfälle oder sogar Anfragen zu identifizieren, die den Engpass zwischen den lokalen Schichten verursachen.

Eine mögliche Ausgabe zu einem kleinen System mit zwei Netzwerkeinstiegspunkten (A und B) und einem gewählten Testszenario, bestehend aus 3 Testfällen (CM TS_A - CM TS_C) ist in Abbildung 6.5-1 dargestellt.

DB-Results lokale Hierachie

Abbildung 6.5-1 - Ergebnis der Abfrage zur lokalen Hierarchie

Anhand dieser Daten, die für den Netzwerkeinstiegspunkt A deutlich höhere Werte liefern, ist ein Bottleneck in den Komponenten zu vermuten, die ausschließlich vom Netzwerkeinstiegspunkt A benutzt werden. Dies könnte eine Firewall oder aber auch eine langsame Netzwerkverbindung sein.

6.5.3.2 Qualitative Hierarchie

Durch den Vergleich von Antwortzeiten spezieller Testszenarios, die sich durch unterschiedliche Nutzung von Systemkomponenten auszeichnen, sind Anfragen zu erkennen, die besonders schwergewichtig sind und eventuell Optimierungen erfordern. Hierbei darf jedoch nicht vernachlässigt und muss in der Interpretation der Daten beachtet werden, dass bestimmte Testszenarios von Ihrer Art her mehr Zeitaufwand benötigen. Durch die Verknüpfung der Testszenarios sind aber auch Einflüsse erkennbar, die durch Korrelation von Systemkomponenten hervorgerufen werden.

Hierzu könnten als Beispiel folgende Abfragen formuliert werden. Diese entsprechen den Abfragen aus den vergangenen Abschnitten, welche durch das Angeben der entsprechenden Testfälle oder Testszenarios ergänzt werden müssen:

Das im dritten Punkt aufgeführte Testszenario sollte die Kombination aus den ersten beiden Punkten sein.

Diese Abfragen können auf Basis der Testszenarios oder auf der Basis von Testfällen durchgeführt werden und unterscheiden sich nur in der Auswahl der entsprechend genutzten Tabellen für die Abfragen.

Der Vergleich der Ergebnisse dieser Abfragen vermittelt einen Überblick über den Einfluss einzelner Systemkomponenten auf die Gesamtperformance.

Diese Methode kann auf allen Ebenen der qualitativen Hierarchie angewendet werden, um so den Einfluss der Korrelation zwischen zwei oder mehreren Ebenen aufzudecken.

6.5.3.3 Quantitative Hierarchie

Die quantitative Hierarchie bilden die Lasttests mit den festgesetzten parallelen Nutzerzahlen. Gleiche Testszenarios, die mit verschiedenen Nutzerzahlen ausgeführt werden, repräsentieren das Verhalten des Systems unter steigender Last. Durch die Verwendung von definierten Sollantwortzeiten bzw. des eingeführten Akzeptanzfaktors ist für jedes Testszenario, die maximale Nutzerzahl erkennbar. Als repräsentativer Wert kann entweder der 90%-Durchschnittswert, bei dem die 5% der geringsten und 5% der höchsten Antwortzeiten ignoriert werden oder die über die Standardabweichung oder durch andere statistische Methoden normalisierten Antwortzeiten gewählt werden.

Die minimale bestimmte Nutzerzahl aller Testszenarios legt die maximale Nutzerzahl fest, unter der, das Gesamtsystem in den geforderten Grenzen arbeitet. Dies ist eine der wichtigsten Information zur Bestimmung der Gesamtperformance eines Systems.

Eine mögliche Ausgabe für 2 Testszenarios mit durchgeführten Lasttests mit 200, 500 und 1000 parallelen Nutzern ist in Abbildung dargestellt.

DB-Results quantitative Hierachie

Abbildung 6.5-2 - Ergebnis der Abfrage zur quantitativen Hierarchie

Für den Fall, dass die Anforderungen an die Anwendung definiert sind, kann nun die Nutzerzahl ermittelt werden, für die das Gesamtsystem in den vorgegebenen Grenzen arbeitet. Je nach der Genauigkeit der erstellten Anforderungen - Gesamtheit aller Anfragen, testszenariobasiert oder anfragenbasiert, muss diese Anfrage angepasst werden. In diesem Fall ist sie für Testszenarios erstellt worden. Sei für alle Anfragen des Testszenarios 1 die geforderte maximale Antwortzeit von 7 Sekunden angegeben, so erfüllt das System dies noch für 500, aber nicht mehr für 1000 parallele Nutzer. Sind nur globale Grenzen für die Antwortzeiten gesetzt, kann die Abfrage verallgemeinert werden oder die Werte aller Testszenarios müssen in die Auswertung mit einfließen.

Sind die jeweiligen geforderten Antwortzeiten ebenfalls in der Datenbank gespeichert, werden nun Abfragen möglich, welche die maximale Nutzerzahl bestimmt, die das Gesamtsystem in den geforderten Grenzen arbeiten lässt. Hierzu werden die gewünschten Werte einfach verglichen und somit die maximale parallele Nutzerzahl bestimmt.

All diese Anfragen setzen voraus, dass die gesammelten Daten der verwendeten Tests unter den gleichen Testbedingungen erfasst und dass bei den erstellten Abfragen auch auf mögliche Fehlerquellen geachtet wurde. Zu diesen gehören Verfälschungen der Antwortzeiten durch nicht korrekt gestellte Anfragen oder Fehlverhalten des Systems, zum Beispiel Timeouts oder durch fehlende Authentifizierung oder ungültige Syntax abgelehnte Anfragen.

Startseite - Sitemap - Impressum - nach oben
Hinzufügen zu Favoriten: Diese Seite zu Mister Wong hinzufügen

STRATO MultiServer: „Ich bin viele Server!“ 1&1 DSL

Nutzen Sie das City-Firmenportal um Ihre Firma bekannt zu machen!
Gogo Performance Berlin - Performance Gogo Girl Berlin - Gogo Tänzerin in Berlin


Performancetest Bottleneck Testtool Mercury Virtuelle User Testverfahren 

Website PromotionWebsite Promotion
Black box test White box test Grey box test testnutzer Virtuelle User Lasttest