RAPPORT PERFORMANCETEST QUESTIONMARK AOC RAAD Door: Marcel Verberkt Stoas Learning Systems Uitgevoerd : 04 mei 2010
INHOUD AOC Raad... 1 Inhoud... 2 Inleiding... 3 Inleiding... 3 Doelstelling... 4 Opzet performancetest... 5 Inleiding... 5 Jmeter en testscripts... 5 Metingen binnen de performancetest zelf... 6 Beperking van de performancetest... 6 Resultaten van de performancetest... 7 Opstarten van de toetsen... 7 Verzenden van de toets... 8 Totaal overzicht van de toets... 8 Responsetijden van de performancetest... 9 Conclusies en aanbevelingen... 11 Bijlagen... 12 18 May 2010 Pagina 2 van 12
INLEIDING De AOC Raad wil graag weten wat de grens is van gelijktijdig toetsen af te nemen op de huidige Questionmark configuratie. Om deze vraag te beantwoorden heeft Stoas i.s.m. de AOC Raad een performancetest uitgevoerd. De performancetest is uitgevoerd door Stoas met behulp van specifiek hiervoor ontwikkelde programmatuur die het gedrag van meerdere deelnemers simuleert en een reëel beeld geeft van de belasting en gedrag van de QMP-server. Op verzoek van AOC Raad is gebruik gemaakt van een eigen toets te weten T-TC-25 Sortimentkennis levende materialen (D). Verderop in dit document zal het resultaat van deze performancetest gepresenteerd worden met de bijbehorende aanbevelingen. Naast het simuleren van deze stress is tevens tijdens deze acties het systeem, met special hiervoor bestemde software, gemonitored. Spotlight stelt ons in staat om tijdens het gebruik een eventuele bottleneck binnen het systeem te signaleren. 18 May 2010 Pagina 3 van 12
DOELSTELLING Door toetsafname met een eigen toets op de AOC Raad-server bij toenemende belasting te meten en te monitoren, wordt duidelijk waar de grens ligt van een verantwoord en betrouwbaar gebruik van de server. De uitkomst van de performancetest zal antwoord geven op de volgende hoofdvraag: Wat is in de huidige situatie het maximaal aantal gelijktijdige afnamen en wat kan een deelnemer verwachten aan wachttijd in de verschillende situaties. Er van uitgaande dat alle studenten binnen 1 minuut aan de toets beginnen, alle studenten na 1 minuut het vraagblok afsluiten en alle studenten na 2 minuten de toets beëindigen. Na 1 minuut Na 2 minuten inloggen toets starten toets sluiten blok 1 af feedback Totale doorlooptijd van één run: ca.3:30 minuten 18 May 2010 Pagina 4 van 12
OPZET PERFORMANCETEST INLEIDING Tijdens de performancetest zal bij verschillende belastingen metingen gedaan worden naar: de performance van de applicatie (hoe snel wordt een pagina aan de deelnemer gepresenteerd); hoe vaak en welke foutmeldingen (errors) doen zich voor binnen de QMP-applicatie; de capaciteit van het operating systeem (OS) (belasting van de processors (cpu), harde schijf lees- en schrijfacties, gebruik van het geheugen); gedrag webserver en databaseserver; het betrouwbaar wegschrijven van de resultaten naar de database; JMETER EN TESTSCRIPTS Voor het performancetest wordt door ons een programma gebruikt, genaamd JMeter. In het kort doet dit programma het volgende; Er wordt binnen Perception een toets gereed gemaakt voor een representatief aantal studenten. In dit geval is dit de student Stresstestuser1 t/m 50, vervolgens wordt JMeter gestart en d.m.v. dit programma worden alle handelingen die gedaan worden opgeslagen, hierbij worden de volgende handelingen opgeslagen, als eerste het oproepen van het inlogscherm, vervolgens het inloggen via perception.dll met de stresstest gebruiker, waarna de toets gestart wordt, enkele antwoorden ingevuld worden om tenslotte verzonden te worden. Aan de hand van deze opname, maken wij onze performancetest zodat het de reëele situatie zo goed mogelijk benadert. De uitkomst van die opname wordt omgezet naar 1 of meerdere testscripts. Deze scripts worden daarna met een toenemend aantal afgespeeld. Het aantal komt daarbij overeen met het aantal gebruikers dat de toets zou maken. Om de beperkingen van de werkplek (netwerkbelasting etc) geen grote rol te laten spelen, worden de testen vanaf verschillende werkplekken uitgevoerd. De performancetest die uitgevoerd is bestaat uit de volgende acties naar de server: Starten (opvragen URL inlogscherm); Inloggen als deelnemer in QMP; Opvragen van de toets; Afsluiten van de toets; Opvragen van feedback; 18 May 2010 Pagina 5 van 12
METINGEN BINNEN DE PERFORMANCETEST ZELF Per test worden dan verschillende zaken gemeten: de minimale tijd voor de weergave van een toets; de maximale tijd voor de weergave van een toets; de gemiddelde tijd voor de weergave van een toets; de mediane tijd (middenwaarde) voor de weergave van een toets; de 90%-waarde tijd (dat is de tijd waarbinnen 90% van de waarnemingen vallen); BEPERKING VAN DE PERFORMANCETEST Het resultaat van de uitgevoerde performancetest zal alleen representatief zijn voor de aangedragen toets. Voor soortgelijke toetsen zullen soortgelijke resultaten behaald kunnen worden. Echter kunnen wij hier geen garanties over geven, omdat er erg veel factoren zijn die de resultaten van de performancetest kunnen beïnvloeden, hierover is op de Questionmark Communities website een document, genaamd Scalabiltyguide, te vinden. 18 May 2010 Pagina 6 van 12
RESULTATEN VAN DE PERFORMANCETEST OPSTARTEN VAN DE TOETSEN Een belangrijk onderdeel van de performancetest is de maximale tijd dat bij de laatste student de toets op het scherm verschijnt. De uitkomst hiervan is terug te vinden in de derde kolom Start Assessment, waar voor alle 11 run's de waarde is weergegeven. Grafiek resultaat performancetest AOC Raad - Questionmark Op de linker as in de grafiek wordt de tijd in milliseconden uitgedrukt. Op de liggende as worden de acties uitgedrukt. Iedere actie komt 11 keer voor. In het algemeen is onze ervaring dat men wachttijden tot 30 seconden acceptabel vindt voor het opstarten van een toets. Uit de grafiek blijkt dat men hier aan voldoet bij 120 gelijktijdige afnamen. De maximale wachttijd bij 200 gelijktijdige deelnemers is ca. 46 seconden. 18 May 2010 Pagina 7 van 12
VERZENDEN VAN DE TOETS Een andere kritiek punt voor de performance is het verzenden van de toetsresultaten. Indien de antwoorden gelijktijdig verzonden worden levert dit een enorme load voor QMP-server op. Het is niet erg aannemelijk dat het afsluiten van de toets en daarmee het bevestigen van de antwoorden binnen de gesimuleerde tijd zullen plaats vinden. Logischer is dat hier een natuurlijke spreiding zal plaats vinden doordat deelnemers in verschillend tempo de vragen beantwoorden. Er zal in dit rapport niet verder hierop worden in gegaan. Ook op de database-server gaf dit geen enkel probleem in geheugen of processor gebruik. TOTAAL OVERZICHT VAN DE TOETS Als de meting van een totale afronding wordt genomen (dus inloggen, opvragen, verzenden etc) dan wordt de meeste stress gemeten bij het starten van de toets. Hoe we tot de opbouw van de stress zijn gekomen is uiteen gedaan in bijgaande tabel. Voor de runs gelden de volgende variabelen: RUN Deelnemers/pc PC's Totaal Errors R001 1 1 1 0 R002 5 1 5 0 R003 3 3 9 1 R004 5 4 20 3 R005 8 4 32 4 R006 12 4 48 2 R007 15 4 60 15 R008 25 4 100 7 R009 30 4 120 11 R010 40 4 160 21 R011 50 4 200 13 De fouten die ontstaan hebben te maken met het feit dat de toets at random vragen selecteert uit een grote hoeveelheid en van een verschillend type. Dit kan opleveren dat een verkeerd antwoord op een bepaalde vraag wordt gegeven, bijv. Multiple Choice waar nu een Drag&Drop vraag is gepositioneerd. De performance wordt hierdoor niet noemenswaardig beïnvloed. 18 May 2010 Pagina 8 van 12
RESPONSETIJDEN VAN DE PERFORMANCETEST Onderstaand een overzicht van de gegevens zoals we die terug zien. Dit is een normaal verloop waar de processor ten tijde van de afname wat drukker is. Het geheugen gebruik blijft zeer beperkt in deze run. Uiteraard vindt er e.e.a. aan netwerkverkeer plaats, maar dit blijft ruim binnen de beschikbare bandbreedte. Grafiek overzicht server gedragingen AOC Raad 18 May 2010 Pagina 9 van 12
Helaas kunnen niet alle getallen opgenomen worden in dit rapport, daarom zal bij dit document een excel-sheet toegevoegd zijn, met hierin pivot tabellen waarmee zelf de gewenste grafieken getoond kunnen worden. Het bestand wat is toegevoegd heeft de volgende naam: Performance_AOC_rapport.xlsx 18 May 2010 Pagina 10 van 12
CONCLUSIES EN AANBEVELINGEN Op grond van de resultaten van de performancetest kan geconcludeerd worden dat uitgaande van de huidige toets in combinatie met de huidige configuratie: De server naar verwachting reageert op de stress zoals die is opgevoerd. De server wordt traag boven de 130 gelijktijdige afnamen, hier is het processor gebruik maximaal bij het inloggen en ophalen van het toetsblok. De performancetest heeft plaats gevonden binnen het netwerksegment waar zich ook de applicatie-server bevindt. Er mag van worden uitgegaan dat toetsen vanaf andere locaties invloed heeft op de resultaten zoals die in dit rapport zijn weergegeven. Conclusie van de performance test is dat de server geschikt is voor afname met 130 gelijktijdige deelnemers. Hier blijft de responsetijd beneden de algemeen geaccepteerde 30 seconden voor het opvragen van de toets na inloggen. 18 May 2010 Pagina 11 van 12
BIJLAGEN Bij dit rapport is een excel-sheet toegevoegd, met hierin pivot tabellen om zo zelf de gewenste grafieken te tonen. Het bestand wat is toegevoegd heeft de volgende naam: Performance_AOC_rapport.xlsx 18 May 2010 Pagina 12 van 12