5 adviezen voor performance tuning

Bij het verbeteren van de performance van financiële applicaties klinkt al snel de roep om extra of grotere servers. Performance is echter altijd een optelsom van functionele elementen, gebruikersperceptie en hardware. Net zoals het maken van meubels een optelsom is van mooi hout, ervaring en goed gereedschap.

5 adviezen uit de praktijk van performance tuning:

1. Maak een benchmark

Baseer de optimale performance op de bruikbaarheid van het systeem en maak hiervoor een benchmark. Denk aan vragen als ‘Wat moet de applicatie doen’ en ‘Kan iedereen er goed mee werken?’ Als je van 5 seconden naar 3 seconden responsetijd gaat, verbeter je weliswaar de performance, maar niet de effectiviteit van de applicatie. Met een benchmark heb je altijd een objectieve standaard om aan te refereren, dit helpt je in de communicatie naar de eindgebruikers.

2. Focus op de bottlenecks

Maak eerst een goede analyse van waar de meeste tijd in een proces verloren gaat. Zo kun je beoordelen hoe de performance is als er één gebruiker actief is. Vaak zitten daar al functionele elementen in die je anders kunt inrichten. Hierdoor wordt niet alleen de performance beter, maar ook technische bottlenecks komen dan al snel boven.

Voor een optimale performance draait het om slim investeren, daar waar je het maximale rendement haalt. Hiervoor is een integrale aanpak nodig: techniek, infrastructuur en functioneel ontwerp. Het is niet altijd zinvol om een grotere server neer te zetten of een generieke databasespecialist naar de database te laten kijken; het gaat om de samenhang van de verschillende componenten en de functies die de applicatie heeft.

3. Schaalbaarheid

Probeer voor live gang een beeld te krijgen van het gedrag van de applicatie tijdens zware belasting. Met loadsimulatie software kun je inzicht krijgen in de capaciteit van het platform door meerdere gebruikers hetzelfde scenario te laten uitvoeren. Wat is het effect op de performance en hoe is dan de hardware belasting? Wat is daarin de bottleneck? En wat vinden we acceptabel? Stel, er zijn 50 gelijktijdige gebruikers, hoeveel procent verlies in de responsetijden ten opzichte van de benchmark is dan geoorloofd?

4. Gelijktijdige processen

Let op de samenhang van verschillende processen. Sommige processen leggen een zware claim op het systeem en zitten daarmee ook de andere gebruikers in de weg. Als de ene gebruiker een batchproces uitvoert, bijvoorbeeld een consolidatie of import, ervaart de andere gebruiker een vertraging in zijn rapport. Als je die processen op de applicatie sneller kunt maken, wordt de applicatie ook meteen beter schaalbaar. Als je met personenauto’s in plaats van vrachtwagens op de weg rijdt, neemt de capaciteit van de weg enorm toe.

5. Integreren in beheercyclus

Neem performancemetingen standaard op in de beheercyclus. Beoordeel voordat je belangrijke changes doet niet alleen de functionele gevolgen, maar ook de effecten op de performance. Gebruik de benchmark uit stap 1 om te zien wat je performance winst is.