Dette dokument dækker udførslen af STS performance testen. Se også Performance rapport - Generelt for generelle aspekter omkring testen. 

STS

STS er installeret på 2 søjler jvf. normal NSP installation. STS er herpå installeret i sin egen JVM/JBoss. Der er foretaget performance målinger af Throughput (TP) på et tilsvarende miljø. STS versionen, der blev testet, var version 2.1.4.

Antagelser for forbehold

  • Der er blevet anvendt en fordeling af request baseret på udtræk fra produktion over en given periode. 

  • Spærrelister er under testen blevet hentet direkte fra DanID's testmiljøer. Dette sker asynkront og ikke oftere end normalt på testmiljøerne.
  • Der er anvendt test certifikater. Disse skulle svarer teknisk set til prod. certifikater.
  • Der er udført 2 kørsler af testen, en med signering via Luna boksen og en uden, da det blev konstateret at en betragtelig andel af tiden blev anvendt til signering i Luna boksen.  
  • CVR-RID servicen er ved testen erstattet af en dertil indrettet designet service. Denne skulle give en billede svarende til, hvad der normalt ses i produktion for denne service. Det skal bemærkes at bidraget fra service til TP er lille, da der kun slåes op en gang, og efterfølgende bruges den cachede værdi. Negative svar fra servicen bliver dog ikke cachet. 

Testen

Afvikling

Der er kun en distribution, men den er udført mod en STS med Luna boks og mod en STS uden Luna boks:

IDLuna
20131216_145511Ja
20131211_165153Nej

Testplan

Testplaner anvendt i denne performance test: sts

sts er en testplan, der indeholder de fleste af de fejlsituationer der kan opstå ved kald af STS. Ved hvert gennemløb udføres der et antal valide MOCES requests og alle specialsituationer i en tilfældig rækkefølge. Billetomveksling mellem SOSI og OIOSAML er en del af specialsituationerne. 

Fordeling

Fordelinger anvendt i denne performance test: prod1week.

Denne distribution er baseret på udtræk fra Splunk for 7 dage i produktion. Der blev observeret ca 100.000 requests i tidsperioden og omkring 90% af disse var valide medarbejdercertifikater. Derudover er der lagt 5% kald til billetomveksling oveni. Hver tråd vil lave ca. 1000 requests mod STS’en i et gennemløb af denne distribution

Målinger

Thoughput

Her følger en tabel over TP for de enkelte kørsler. Derudover er antallet af tråde per node samt antallet af anvendte noder til målingen angivet. 

IDTPTrådeNoder
20131216_14551115.18212
20131211_165153380.88353

Miljø

Vedhæftet findes grafer, der beskriver CPU og heap udviklingen under testen med Luna. Tilsvarende grafer kan produceres for testen uden Luna box. 

  • Heap: dette er ikke en begrænsende resource. JVM'en har 1280 MB heap space tilrådighed, og dette loft rammes ikke under kørslen. Dette ses med eller uden Luna box; udviklingen her er stort set ens. 
  • CPU: Ved Luna kørslen var CPU ikke en begrænsende faktor – dette ses på tilhørende graf. Ved den anden kørsel er CPU forbruget dog tæt på 100%, og må derfor bidrage til sandsynliggørelse af at målte TP er maksimalt.  

Konklusion

Her vil der kun blive set på målingen med luna box, da dette er hvad der pt. er installeret i produktion. 

Med et TP på 15.18 forespørgelser/sekund bliver det 52.648 forespørgelser i timen. Hvis der ses på en tilfældig uge (2.-8.dec 2013) i produktionsmiljøet, så findes et maksimalt antal forespørgelser i timen per host til at være omkring 1.500. Dette svarer til 5.4 % af det maksimale målte TP. 

Yderligere betragning af fordelingen af forespørgelser viser at de fleste foretages i timen 8-9 om morgenen. I denne time overstiger forespørgelser per minut ikke 50. Dette svarer til 5.4 % af den målte TP. 

Forbedringer

  • Luna: som det ses på forskellen mellem de 2 kørsler, så kan betale sig at erstatte Luna boksen med filesystem baseret certifikat opbevaring. Umiddelbart ser det ud til at Luna boksen serialserer signeringen, hvilket betyder at TP kan øges ved at tilføje flere boks til systemet.   
  • Logning: Der bliver pt. genereret en betydelig mængde log. Specielt blev der genereret flere GB under performance kørslerne. Dette kombineret med de ældre diske, eller generelt IO, kan have betydning for svartiden. Derfor kunne det betale sig mindske logningen. Dette kan konfigureres.
  • Miljø: ved brug af en enkelt Luna boks kan det ikke betale sig at tilføje flere søjler til systemet medmindre disse har adgang til yderligere Luna bokse.

  File Modified
PNG File 20131211_165153.png 21-01-2014 by Henrik Danielsen
PNG File 20131216_145511.png 21-01-2014 by Henrik Danielsen
PNG File 20131216_145511_heap.png 21-01-2014 by Henrik Danielsen
PNG File STS last 7 days req_hour.png 21-01-2014 by Henrik Danielsen

  • No labels