Helpdesken i JN Datas hovedkvarter i Silkeborg havde travlt i foråret. Ansatte i banker over hele landet ringede og klagede over, at et websystem var meget langsomt at arbejde med.
Systemet er udviklet for den danske bankverden.
Det bruges til udveksling af data mellem pengeinstitutter.
Lige omkring den tid, hvor klagerne begyndte at komme ind, var JN Data, der er Nykredit og Jyske Banks fælles driftscenter, ved at lægge en ny version af applikationen i drift.
"Problemerne kunne hænge sammen med den nye version. Men måske var årsagen en anden, det var ikke til at vide. Vi havde systemer til at tjekke, at alle servere var i luften. Men de kunne ikke bruges til at afgøre, hvor problemet opstod - de viste bare, at alt kørte, men ikke hvor godt det kørte," fortæller Tommy Hvid Jørgensen. Han er sektionsleder i web-teknologisektionen, som har ansvaret for afvikling af web-applikationer.
Agenter opsamler data
JN Data var på det tidspunkt i gang med at teste programmet CA Wily Introscope.
Det bruges til at måle performance på web-applikationer. Hurtigt besluttede man at pudse programmet på problemet.
"Vi installerede agenter på alle de servere, der indgår i web-applikationen. Agenterne rapporterer tilbage til Introscope, hvor vi opbygger et aktuelt billede af, hvordan performance ser ud lige nu. Det giver os konkrete fakta at arbejde med - når vi ændrer noget, kan vi direkte måle konsekvenserne," forklarer Tommy Hvid Jørgensen.
Programmet opfanger alt, der passerer en Java Virtual Machine (JVM) eller CLR'en (Common Language Runtime) i .Net. Dermed kan man for eksempel måle, hvor lang tid en bestemt Java-klasse er om at få svar fra en anden klasse.
I løbet af de følgende dage analyserede JN Datas driftsfolk i samarbejde med programudviklerne de data, de fik fra Introscope-programmet. De koncentrerede indsatsen om JVM'en, systemets kapacitet og selve applikationskoden.
Kode og infrastruktur
"Det viste sig, at problemet skyldtes en kombination af flere faktorer. Der var flere steder i applikationskoden, hvor vi kunne optimere trækket på backend-ressourcer. Men vi kunne også optimere den måde, vi havde opbygget vores web-infrastruktur på.
Vi lavede således en opsplitning i en service- og procesdel. Det fjernede i kombination med applikationsrettelserne den flaskehals, vi havde identificeret.
Resultatet blev højere udnyttelse af serverne, da applikationerne i princippet fik dobbelt RAM og slutbrugeren dermed igen fik acceptable svartider", fortæller han.
Da årsagerne til problemerne var fundet, gik udviklerne og driftsfolkene i gang med at implementere de nødvendige rettelser. Et par uger efter, at problemet var opstået, var det løst.
"Hvis vi skulle have klaret os med traditionelle værktøjer og metoder, ville det nok have taget tre gange så lang tid at finde årsagen til problemet og løse det," anslår han.
Særligt værktøj giver gode muligheder
Erfaringen har gjort, at JN Data er meget begejstret for de muligheder, et værktøj som Introscope tilbyder:
"Forskellen er, at vi kan basere vores problemløsning på fakta. Nu ved vi, nøjagtig hvordan applikationerne kører, og hvor flaskehalsene opstår," siger Tommy Hvid Jørgensen.
JN Data er da også gået videre med værktøjet.
Virksomheden er ved at gennemføre et proof of concept af en anden CA Wily-komponent, Customer Experience Manager.
"I samarbejde med Introscope giver den et billede af den performance, som den enkelte bruger ude på internettet oplever, når han kører vores applikationer. Den har vi for nylig sat ind mod konkrete performanceproblemer, som vi via værktøjet isolerer. Derved får vi en langt hurtigere løsningstid end sædvanligt," fortæller han.
Kræver kulturændring
Inden forårets problem opstod, havde JN Data overvejet forskellige værktøjer til at hjælpe med performancemålinger. I den forbindelse blev Gartner, Butler Group og Barclay's Bank forespurgt om værktøjet.
"Vi kiggede på flere, men vi fandt ikke nogen, der var lige så homogene og letforståelige som Wily Introscope. Det er en forholdsvis stor investering for os. Vi forventer derfor meget af det, men det kræver en kulturændring at indføre det," siger Tommy Hvid Jørgensen.
Det forklarer han med, at værktøjet kan give viden om nogle områder, hvor man før har været henvist til udelukkende at stole på oplysninger fra den mere traditionelle metode med at kigge i logfiler eller stole på overvågningsresultater, der ikke direkte handler om performance.
"Det kan godt være en udfordring for en tekniker at få at vide, at Introscope altså siger noget andet end det, han havde ventet. Og det udfordrer også det blame game, hvor man altid kan sende sorteper videre til en anden. Nu har vi fakta at bygge på," forklarer han.
Skaber fælles brohoved
JN Data har afsat et år til implementeringen af værktøjet. Det skyldes både den omfattende ændring i den måde, man normalt håndterer problemer på, og den kulturændring, som følger med indførelsen af værktøjet. JN Data forankrer desuden værktøjet i de to udviklingsorganisationer, som datacentret støtter.
Formålet er at skabe et ensartet brohoved mellem udvikling og datacenter set fra et performanceperspektiv.
"Kombineres værktøjet med eksperters spidskompetencer, er det den ultimative kombination, hvis man vil nedbringe sin fejlsøgningstid. JN Data forventer at kunne benytte de ressourcer, der er involveret i fejlsøgning langt mere hensigtsmæssigt i fremtiden.
Vi er som datacenter meget afhængige af nøglepersoners viden. Det vil vi fortsat være, men vi forsøger at risikominimere ved at komplementere nøglepersoners viden med værktøjet," siger Tommy Hvid Jørgensen.
"Denne type værktøjer giver os mulighed for at blive mere proaktive i stedet for reaktive. Vi kan sætte dem ind i testfasen og dermed opdage potentielle problemer, før vi går i drift," forklarer han videre.
Web-applikationer er komplekse
Prabhjot Singh, der er marketingansvarlig for CA's Wily-produkter, fortæller om stigende interesse for dem. Det forklarer han med, at web-applikationer udgør en udfordring for de mere traditionelle systemer til performanceoptimering:
"Web-applikationer er meget komplekse. De er opbygget af en mængde komponenter, der kommunikerer på kryds og tværs. Traditionelt har man styret performance i siloer:
En silo sikrede, at databasen kørte optimalt, en anden tog sig af netværket, en tredje af applikationen. Men i dag er der brug for et paradigmeskift, hvor vi ser på den samlede transaktion fra brugeren klikker på en knap, til han får sit svar," forklarer Prabhjot Singh.