Toon posts:

[ASP] waar verlies ik mijn snelheid

Pagina: 1
Acties:

Verwijderd

Topicstarter
Eens even een rare vraag, we hebben hier een site in asp, die op een eigen server draait. Snelle server, voldoende geheugen, en schijfruimte.

Echter nu duurt het vaak 10 seconden voordat een pagina geladen is (volledig tonen op het scherm)

De pagina maakt gebruik van een aantal include files, die geen overtollige code genereren.

Maak niet veel gebruik van string concatenaties

Heb een tijdmeting gedaan, om de ASP uit te voeren ben ik ongeveer 3 seconden kwijt.

Waar blijven mijn overige 9 seconden?
Het verzenden van de code van de server naar mij browser??

Als ik de bron opsla en op mijn lokale pc uitvoer is dit super snel. Wat zou zoiets kunnen zijn..

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 26-05 00:01

Janoz

Moderator Devschuur®

!litemod

Hoe groot is de content en wat is de snelheid van de netwerkverbinding tussen je client en de server?

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

Topicstarter
Het bestand is totaal 18kb

Ik heb hier thuis een 1Mbit verbinding met de zaak waar een nog veel snellere verbinding ligt.

Verwijderd

Topicstarter
Als de server het toch binnen enkele seconden een content kan genereren ligt het naar mijn mening toch eerder aan de verzending e.d. dan aan de code of zie ik dat verkeerd.

  • Alex
  • Registratie: Juli 2001
  • Laatst online: 28-02 19:26
Doet IIS geen vage authentation?

[Mierengeneuk]
• Include files genereren geen code, bevatten code
• (3+9) <> 10

:+

Deze post is bestemd voor hen die een tegenwoordige tijd kunnen onderscheiden van een toekomstige halfvoorwaardelijke bepaalde subinverte plagiale aanvoegend intentioneel verleden tijd.
- Giphart


  • dawuss
  • Registratie: Maart 2001
  • Laatst online: 01-02 20:46

dawuss

gadgeteer

Heb je niet perongeluk een aantal tijdrovende bewerkingen perongeluk in een loopje zitten ofzo?
Is een redelijk veel voorkomende fout:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
<?php
function zwareFunctieDieHeelLangDuurt() {
  for($i = 0; $i < 12345; $i++) {
   //....
  }
}

for($c=0; $c < 1000; $c++)
  $blaat = zwareFunctieDieHeelLangDuurt();
  $woei = $doeIetsLeuks($blaat, $c);
}
?>

t.o.v.
PHP:
1
2
3
4
5
6
<?php
$blaat = zwareFunctieDieHeelLangDuurt();
for($c=0; $c < 1000; $c++)
  $woei = $doeIetsLeuks($blaat, $c);
}
?>


is een verschil van 1000*12345 = 12345000 iteraties tegenover 12345+1000 = 13345 iteraties. Dat merk je wel in de tijd dat het geparsed wordt.

Ja, dit is PHP, ik ken geen ASP of andere .NET dingen

[ Voor 8% gewijzigd door dawuss op 03-04-2004 17:01 ]

micheljansen.org
Fulltime Verslaafde Commandline Fetisjist ©


Verwijderd

Topicstarter
Alex de Groot schreef op 03 april 2004 @ 16:47:
Doet IIS geen vage authentation?

[Mierengeneuk]
• Include files genereren geen code, bevatten code
• (3+9) <> 10

:+
Volgens mij geen authentation, zal daar nog eens even naar kijken

Bijna alle includes zijn functions of subs, had ik er even bij moeten zetten

Verwijderd

Topicstarter
[quote]dawuss schreef op 03 april 2004 @ 16:57:
Heb je niet perongeluk een aantal tijdrovende bewerkingen perongeluk in een loopje zitten ofzo?
Is een redelijk veel voorkomende fout:
[quote]

Dat ben ik nu dus aan het uitzoeken, wij rekenen verder bijna nergens dus...
Maar die paar seconden dat het maart duurt om content te genereren zegt waarschijnlijk toch dat het niet in de code ligt maar waarschijnlijk aan de machine..

  • dawuss
  • Registratie: Maart 2001
  • Laatst online: 01-02 20:46

dawuss

gadgeteer

Verwijderd schreef op 03 april 2004 @ 17:02:
Dat ben ik nu dus aan het uitzoeken, wij rekenen verder bijna nergens dus...
Maar die paar seconden dat het maart duurt om content te genereren zegt waarschijnlijk toch dat het niet in de code ligt maar waarschijnlijk aan de machine..
Als de parsetime inderdaad "maar" 3 seconden duurt (is best lang), t.o.v. 10 seconden in totaal, kan het idd best ergens anders aan liggen.

Gebruik je een database? Zo ja, draait die op dezelfde machine?

Verder: Wat voor webserver is het? Probeert de webserver reverse DNS-lookups te doen? Probeer je dat zelf in je website? (voor stats bijvoorbeeld)

micheljansen.org
Fulltime Verslaafde Commandline Fetisjist ©


Verwijderd

Topicstarter
dawuss schreef op 03 april 2004 @ 17:10:
[...]

Als de parsetime inderdaad "maar" 3 seconden duurt (is best lang), t.o.v. 10 seconden in totaal, kan het idd best ergens anders aan liggen.

Gebruik je een database? Zo ja, draait die op dezelfde machine?

Verder: Wat voor webserver is het? Probeert de webserver reverse DNS-lookups te doen? Probeer je dat zelf in je website? (voor stats bijvoorbeeld)
Database is op dezelfde server, de webserver is een Windows 2000 machine met een SQL server 2000, dat van de reverse DNS-lookup ga ik even uitzoeken

  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 18-05 15:53

Jaspertje

Max & Milo.. lief

Ik zou gewoon ff overal tijden bij gaan zetten, aan het begin en eind van elke sub of actie die je aanroept. Dan kan je namelijk je fout gaan isoleren.. als het werkelijk aan de code ligt..

Is de config bij jou thuis dezelfde als op het werk? Heb jij nieuwere udates van windows (ervan uitgaanda dat je dat draait)?

Misschien ligt het aan de SQL?

  • _Sunnyboy_
  • Registratie: Januari 2003
  • Laatst online: 14-01 22:23

_Sunnyboy_

Mooooooooooooooooo!

Hoe heb je vastgesteld dat het genereren van de output maar die 3 seconden duurt? Als die meting namelijk juist is kan het niet aan queries of wat dan ook liggen, aangezien die binnen de generatie van de content vallen (natuurlijk is 3 seconden wel erg lang dus daar kan vast ook nog wel wat geoptimaliseerd worden....)

Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life


  • EfBe
  • Registratie: Januari 2000
  • Niet online
Verwijderd schreef op 03 april 2004 @ 16:37:
Eens even een rare vraag, we hebben hier een site in asp, die op een eigen server draait. Snelle server, voldoende geheugen, en schijfruimte.

Echter nu duurt het vaak 10 seconden voordat een pagina geladen is (volledig tonen op het scherm)

De pagina maakt gebruik van een aantal include files, die geen overtollige code genereren.
Elke include file moet hij parsen bij elk request. Dit houdt in dat als je bv de ado inc file include voor 1 enkele constante, je dus wel die gehele file parst.

Verder is het verstandig in de virtual dir/webapp properties in IIS buffering AAN te zetten. Dit zorgt ervoor dat dingen als
If myVar = true Then
%>
<%=myOtherVar%>
<%
end if
...

erg snel gaan, anders verlies je daar veel tijd.

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


Verwijderd

Topicstarter
_Sunnyboy_ schreef op 03 april 2004 @ 19:07:
Hoe heb je vastgesteld dat het genereren van de output maar die 3 seconden duurt? Als die meting namelijk juist is kan het niet aan queries of wat dan ook liggen, aangezien die binnen de generatie van de content vallen (natuurlijk is 3 seconden wel erg lang dus daar kan vast ook nog wel wat geoptimaliseerd worden....)
Met de optie Timer, hiermee kun je kijken hoelang het duurt voor iets wordt uitgevoerd, bovenaan je code vraag je hem op, en onderaan (of ergens anders) vraag je hem weer op en geeft het verschil weer (in milliseconds)

  • _Zeratul_
  • Registratie: Augustus 2001
  • Laatst online: 19-05 00:15
Kijk even op de server zelf hoe snel de pagina verschijnt in de browser. Komt deze binnen enkele seconden op het scherm dan ligt het niet aan de code.

Duurt het ook lang om kleine bestanden te kopieren naar de server, controleer dan de instellingen van de netwerkkaart in combinatie met de switch. Staat de netwerkkaart op autosense, zet deze dan vast op bv. 100(0)mbps full-duplex. Zorg dan ook dat de poort op de switch op dezelfde instelling staat.

Ik ben hetzelfde ook tegengekomen en het probleem was de autosense welke niet lekker werkte icm de switch.

IT's all 'bout good stuff


  • om3ega
  • Registratie: Maart 2001
  • Laatst online: 26-05 22:06
Heb je requests naar andere sites? (Haal je informatie van andere servers op?) .. Ik heb dat probleem (php) ook gehad...

  • Reptile209
  • Registratie: Juni 2001
  • Laatst online: 13:13

Reptile209

- gers -

Heb je niet stiekum tabellen en/of divs die niet zijn afgesloten? Dan moet de browser wachten op het laatste pakketje, en lokaal is 'ie er sneller achter dat er niks meer komt dan via internet. Ook niet stiekum een (al dan niet klein) plaatje bovenin of als background dat er bizar lang over doet (wederom niet lokaal te merken, maar wel via internet)?

$ 0.02 donated :)

Zo scherp als een voetbal!

Pagina: 1