top of page
Foto van schrijverRené Meijboom

Frontend performance meting – als aanvulling op de traditionele manier van performancetesten


Vaak ligt de eerste prioriteit binnen het performancetesten op het IT-perspectief. Dit is ergens wel terecht te noemen. Voordat (eind)gebruikers een systeem kunnen gebruiken, is het natuurlijk als eerste van belang dat het systeem het doet en niet omvalt wanneer er meerdere gebruikers tegelijk bezig zijn. Maar hoe ervaart de eindgebruiker het systeem? In deze blog sta ik graag even stil bij hoe hier het antwoord op te vinden.


Performancetesten worden uitgevoerd om applicaties en systemen te testen op verschillende performance aspecten. Vanuit IT-perspectief gaat het dan om bijvoorbeeld throughput en resource gebruik (CPU, memory e.d.). Vanuit gebruikersperspectief gaat het om responstijden, hoeveel mensen er gelijktijdig kunnen werken en de perceptie van snelheid. De traditionele performancetest tools zijn uitstekend in staat om het eerste aspect te testen, maar zijn minder sterk in het meten van de werkelijke responstijd zoals de eindgebruiker die ervaart.


Dat komt omdat deze performancetest tools vooral meten binnen de (systeem)grenzen van de organisatie zelf. Hierbij wordt echter de vertraging die wordt veroorzaakt door internet en de software en hardware van de eindgebruiker (klant), buiten beschouwing gelaten. En juist door de groeiende rol van Ajax/dynamische websites/HTML 5 wordt alles wat er in de browser gebeurt van steeds grotere invloed op de eindgebruiker responstijd. Hoe kunnen we dan toch goed meten wat de eindgebruiker voor responstijd ervaart? De oplossing hiervoor staat schematisch weergegeven in onderstaand plaatje: Synthetic monitoring of RUM.

Synthetic monitoring betreft het uitvoeren van gescripte transacties door externe agents op een web applicatie in een gecontroleerde omgeving. Synthetic monitoring:

  • Is een simulatie van het gedrag van eindgebruikers

  • Maakt gebruik van externe agents

  • Meet op vaste intervallen

  • Vanaf één of meerdere vaste locaties

  • Toepasbaar in test- en productieomgeving


Real User Monitoring (RUM) meet de daadwerkelijke performance van de internet applicatie zoals die door de eindgebruiker in productie wordt ervaren. Real User Monitoring:

  • Meet het daadwerkelijke gedrag van eindgebruikers

  • Op het device, met de browser en de internet snelheid van de eindgebruiker

  • gebruikt dus geen gescripte transacties

  • Maakt gebruik van Javascript en/of agents

  • Is alleen toepasbaar in productieomgeving

Als je beide oplossingen naast elkaar zet, worden de verschillen misschien wat duidelijker.


RUM
  • Performance gemeten zoals de eindgebruiker die ervaart in productie

  • Geeft informatie over elke gedeelte van de internet applicatie die door klanten bezocht wordt

  • Alleen informatie als er bezoekers op de site komen

  • Monitoring van een release die reeds in productie genomen is

Synthetic monitoring
  • Performance gemeten door simulatie van eindgebruikers in test- of productieomgeving

  • Geeft informatie over een vaste set van stappen in een vast interval vanaf een vaste locatie

  • Elke x minuten komt er informatie over response tijden binnen

  • Monitoring in zowel test- als productieomgeving


De keuze voor RUM of synthetic monitoring hangt vooral af van de behoefte van de klant. Is inzicht in de daadwerkelijke responstijd van eindgebruikers in productie nodig? Of is monitoring in test en productieomgeving nodig om voor oplevering al inzicht in responstijden te krijgen? Indien beide vragen met ja beantwoord worden, dan is ook een combinatie van beide oplossingen mogelijk.


Wil je meer informatie over dit onderwerp? Bekijk dan mijn TestNet-presentatie:


Of neem contact met op met PerformanceArchitecten. We spreken graag de voor- en nadelen van beide oplossingen met u door.


7 weergaven0 opmerkingen

Recente blogposts

Alles weergeven

Comments


bottom of page