Avatar billede websam Nybegynder
07. november 2006 - 11:24 Der er 7 kommentarer og
1 løsning

Måle hastigheden på kode eksikvering ?

Hejsa,

Jeg skal have lavet en stump kode der måler hvorlang tid det tager at loade en bestemt side. Jeg tænker her på, et jeg skal vide hvor mange sekunder/millisekunder det tager at lode en bestemt del af en side.

Hvordan gør jeg det, nogen forslag ?

/Websam
Avatar billede websam Nybegynder
07. november 2006 - 13:28 #1
Det løste jeg således :

I top af kode :
DateTime StartTest = DateTime.Now;
decimal Test1 = (StartTest.Hour * (24 * 60 * 1000)) + (StartTest.Minute * (60 * 1000)) + (StartTest.Second * 1000) + StartTest.Millisecond;

I bund af kode :
DateTime SlutTest = DateTime.Now;
decimal Test2 = (SlutTest.Hour * (24 * 60 * 1000)) + (SlutTest.Minute * (60 * 1000)) + (SlutTest.Second * 1000) + SlutTest.Millisecond;
decimal Result = Test2 - Test1;
Response.Write(Convert.ToDecimal((Result / 1000)));

Så er der lidt at kigge på til jer der kunne bruge det ;o)

/Websam
Avatar billede snepnet Nybegynder
07. november 2006 - 20:12 #2
Du kan bare benytte traceren - den skriver relevante værdier ind automatisk, og du kan skrive direkte til tracet, hvilket også vil give dig tidsangivelser.
Trace.WriteLine(...);
Du kan slå trace til i web.config, eller pr. side.
Desuden kan du angive, om du vil have outputtet på siden - eller vil se det på en seperat side (http://host/site/trace.axd)
Mvh
Avatar billede arne_v Ekspert
08. november 2006 - 01:25 #3
jeg ville til enhver tid foretrække at måle client side

årsag: hvad skal det nytte at selve script koden kun tager kort tid hvis den hænger
længere ude
Avatar billede websam Nybegynder
08. november 2006 - 12:12 #4
Grunden til at jeg ville lave denne test var for at få styr på hvor jeg havde problemer med enkelte peaks på nogle SQL forspørgelser og det kom jeg så frem til ved at indsætte kodestumperne forskellige steder i min programering, ikke kun på sider men oxo i mit library hvor jeg have de største problemer.

Kan i evt. give et eksempel på de forskellige ting i nævner ?

/Websam
Avatar billede snepnet Nybegynder
08. november 2006 - 16:41 #5
Hvad har du yderligere behov for omkring trace?
http://quickstarts.asp.net/QuickStartv20/aspnet/doc/monitoring/tracing.aspx
Mvh
Avatar billede lifo Nybegynder
09. november 2006 - 00:10 #6
forstår ikke helt hvorfor du gør dette

decimal Test1 = (StartTest.Hour * (24 * 60 * 1000)) + (StartTest.Minute * (60 * 1000)) + (StartTest.Second * 1000) + StartTest.Millisecond;

ville nok heller gøre sådan

System.Diagnostics.Stopwatch stopUr = new Stopwatch();
stopUr.Start();
  .. kode som tager tid       
stopUr.Stop();
Response.Write("det tog " + stopUr.ElapsedMilliseconds + "ms");
Avatar billede arne_v Ekspert
09. november 2006 - 01:16 #7
DateTime StartTest = DateTime.Now;
...
DateTime SlutTest = DateTime.Now;
Response.Write((SlutTest - StartTest).TotalMilliseconds);

bør også virke
Avatar billede arne_v Ekspert
09. november 2006 - 01:18 #8
hvis du vil "performance unit teste" dit DAL, så ville jeg gøre det i en
standalone app

NUnit bør kunne bruges

måske er der endda en performance test overbygning til NUnit
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester