Lasttests für Online-Auftritte Claus-Georg Pleyer Sachgebiet IT Fachbereich Informations- und Hochfrequenztechnik 1
Kritische Fragen zum Online-Auftritt Antwortzeit Wie lange müssen Benutzer auf angeforderte Seiten warten? Durchsatz Wie viele Benutzer können gleichzeitig zugreifen? Lastspitzen Was passiert bei einem sehr schnellen Anstieg der Benutzer? Flaschenhals Welche Komponenten sind als erstes ausgelastet? Fehler Gibt es systematische Fehler beim Zugriff? Seitenweiterentwicklung Wie entwickelt sich die Performance bei Änderungen (Inhalt, Design) im Online-Auftritt? HW/SW-Updates Wie ändert sich die Performance bei neuen SW- und HW-Komponenten im Back-End? 2
Welche Benutzer-Zugriffe kann die RBT testen? Seiten-Zugriff / Download: HTTP(S) 1.0/1.1 Get -Text: HTML - Bilder: JPEG, GIF - Steuerinformationen: CSS, JavaScript (.js), PHP, XML-Dateien, Flash (.swf), etc. - Dokumente und anderer Content:.pdf,.wav,.mp4, etc. (z.b. Podcast) Formular-Eingabe: HTTP(S) 1.0/1.1 Form Get/Post - wechselnder Inhalt (z.b. Suche, Umfrage, Registrierung) Login, Postings, Messaging: HTTP(S) 1.0/1.1 Form Get/Post und Jabber - wechselnder Inhalt (z.b. Chats, Foren) - Cookies Streaming über RTSP: RTSP-Play - Start- und End-Zeit sowie Dauer variabel Spezielle Test-Seiten mit unterschiedlicher Back-End-Tiefe - Eingrenzung von möglichen Engpässen - Untersuchung bestimmter Komponenten 3
Welche Testvarianten bietet die RBT an? Zeitpunkt Häufigkeit Testart Tests Tag Nacht einmalig zyklisch funktional Last Streß Stichpunkt Vor Freischaltung des Online-Auftritts Nach Freischaltung des Online-Auftritts 4
Welche Lastwege testet die RBT? Test 1: Von der RBT aus auf den Betreiber oder den Provider des Webauftritts Test 2: Vom RBT-Provider aus auf den Betreiber oder den Provider des Webauftritts Test 3: Vor Ort auf mehrere oder einzelne Komponenten des Betreibers Test 1 RBT Test 3 Rundfunkanstalt Controller Lastrechner Streaming FW 2 x 2,3 Mbit/s S-DSL Internet RA-Provider Test 2 Provider beliebige Zugangsraten Netzwer-Hops Firewall Proxy Web-Server Applikations- Server Datenbank Mögliche RBT-Lastrechner RBT-Lastmodul Last- u. Meßpunkte: Dateiserver 26.10.2007 5 Rundfunk-Betriebstechnik GmbH
Welche Web-Test-Tools gibt es? Große Vielfalt Von einfach bis komplex und von alt bis neu Linux- oder Windows-basierend oder beides Open Source oder proprietär Von frei bis über 100.000 allein für SW Freeware (nur SW) - kommandozeilenorientiert, Linux: Apache flood, ApacheBench (ab), HP httperf - mit GUI: MS Web Application Stress (WAS), Apache JMeter, Cyrano/Quotium/GNU OpenSTA Kommerzielle Tools -SW: Zott s_aturn, Paessler Webserver Stress Tool, Borland SilkPerformer, David Fischer Proxysniffer, HP/Mercury Loadrunner, Verysoft/Quotium QTest, Kay H. Fluhr Edirector, Minq PureLoad, Compuware QALoad, Empirix e-load, Neotys NeoLoad -HW + SW: Shenick diverifeye, Spirent Avalance, Ixia IXLoad, Agilent NetworkTester 6
Was ist das Testumfeld der RBT? Know How - RFCs, HTTP-Parameter, Testkonzepte, Labortests Meßmittel - Open System Testing Architecture (OpenSTA) Browser-Rekorder, clusterfähig, leicht abrufbare URL-Statistiken - Agilent NetworkTester hardware-basierend, 2 x 2 GE, Reporting-Tool, Tcl/Tk-skriptfähig, seit `05 bei der RBT im Einsatz - ergänzende oder andere Tools möglich Erfahrung - Web-Tests bei BR, ZDF und RBT - Realitätsnähe - Meßmitteleinsatz beim Internet-Provider Flexibilität und Unabhängigkeit - rundfunkspezifische Ausrichtung - individuelle Auswertung und Aufbereitung - Objektivität durch freie Wahl der Test-Tools 7
Was leisten die von der RBT eingesetzten Tools? Simulation eines realen Online-Nutzerverhaltens - beliebige parallele und sequenzielle URL-Zugriffe - beliebige feste oder zufällige Pausen ( Denkzeiten ) - beliebig gewichtete, wechselnde Eingaben Skalierung der Zugriffe bis auf mehrere tausend Benutzer - unterschiedliche zeitliche Last-Profile - Nachbildung von im Rundfunk üblichen Spitzenlasten, z.b. bei Großereignissen - Individuelle IP- und MAC-Adressen für die Last-Client-Instanzen Monitoring beteiligter Komponenten - für sämtliche Client-Instanzen stichpunktartig gut möglich, durchgängig eher aufwendig - Ergänzende Überwachung von Netz- und Server-Kapazitäten Ziel: Verifizierbare realistische Lastsituationen, um Auswirkungen von Änderungen zu erkennen Automatisierte Abläufe möglich Zusammenarbeit mit Ihren Mitarbeitern (z.b. Monitoring und Web-Design) erwünscht 8
Wie werden die Tests von der RBT aufbereitet? Testbeschreibung - Welche Last wurde eingesetzt? Ergebnis-Graphiken - durchschnittliche und maximale Antwortzeiten (Differenzierung nach HTTP-Response, TCP-Session-Setup und DNS möglich) - lastkonformer Durchsatz, Transaktionsraten (HTTP-Code 200 OK) - Fehlerhäufigkeit bei Antworten des SUT RBT-Startseite mit einem Benutzer 0.300 - Auslastung des Testsystems Vergleiche - zeitlich (chronologisch) - örtlich (Meßpunkte) - zielbezogen (Portale) - lastbezogen (Meßläufe) Variable(s) 0.250 0.200 0.150 0.100 0.050 2007Jul20.183216-Test Plan(Client) Resource(0:<Client Resource:0>) Interface(0:<GIGABIT>) Profile(0:<Startseite>) Avg Transfer Time Max Transfer Time Min Transfer Time 0.000 Bewertungen - Seiten- und URL-Ladezeiten aus Anwendersicht - Engpaß-Eingrenzung - Fehleranalyse auf Netzwerk- und Anwendungsebene 00:00 00:05 00:10 00:15 00:20 00:25 00:30 00:35 00:40 00:45 00:50 Elapsed Time (hh:mm:ss) 9
Beispiel: Streßtest des Webservers im RBT-Labor Zugriffe auf HTML-Seite mit JPEG-Bildern bei 4s - 50s Denkpause Normalbetrieb 8 neue Benutzer/s 1 2 1 Leistungsgrenze ab ca. 1570 Benutzern Ursache: 100 % GE-Durchsatz in Richtung Client 2 Überlast-Effekte ab ca. 1750 Benutzern - Transaktionsrate sinkt auf 450 Requests/s - Durchsatz verringert sich auf 60 MByte/s - Antwortzeiten, Offene Sessions und Time-Outs steigen an Ursache: 100 % CPU-Auslastung des Web-Servers 10
Über Ihre Kontaktaufnahme freuen sich Jürgen Wehner (Sachgebietsleiter IT) Tel.: (0911) 65 73-190 E-Mail: juergen.wehner@rbt-nbg.de Stefanie Wenk Tel.: (0911) 65 73-192 E-Mail: stefanie.wenk@rbt-nbg.de Claus-Georg Pleyer (insb. Rückfragen zu dieser Präsentation) Tel.: (0911) 65 73-225 E-Mail: claus-georg.pleyer@rbt-nbg.de 11