Forums Neueste Beiträge
 

Speichernutzung asp.net Anwendung

29/05/2009 - 08:51 von Thomas Goede | Report spam
Hallo zusammen,

folgende Problem (und ich hoffe ich bin hier richtig):

- eine mit ASP.NET entwickelte Web-Anwendung für FAQs besteht aus 6
aspx-Seiten und zusàtzlichen css-Dateien
- Datenbank ist MS-Access
- die .dll hat gerade mal eine Größe von 84KByte, Gesamtgröße aller Dateien
ist 168KB
- Webanwendung làuft auf Windows Server 2003 mit ASP 1.1

Wenn die Startseite der Anwendung im Browser geöffnet wird, belegt die
Anwendung ca. 25 MB Speicher. Über das Tool Prozess Explorer (Download MS),
sieht man aber, dass beim virtuellen Speicher 220 MB benutzt/allokiert?
werden (bei mir auf meinem virt. Server)

Beim Kunden benutzt die identische Anwendung ca. 35-40 MB Speicher (kein
Thema), aber der virtuelle Speicher geht beim Aufruf der Startseite sofort
auf ca. 520 MB hoch. Was aufgrund der dort eingestellten Reyclingwerte
(virt. Speicher bei 500MB des Applicationpools) immer dazu führt, dass
sofort ein recycling durchgeführt wird. Und scheinbar hàngt sich dabei
gelegentlich der IIS auf.

Klar, man kann die Werte für den App-Pool höher setzen, aber meine
eigentlichen Fragen sind folgende:

1) Welche Gründe kann es geben, dass auf meiner Testmaschine (virt. Server)
nur 220MB, beim Kunden aber >520 MB virt. Speicher benutzt werden.

2) Was ist überhaupt der Grund für einen so hohen virt. Speicher und welche
Dinge werden durch den IIS evtl. noch mitgeladen bei einer asp.net Anwendung
die in einem eigenen Applicationpool làuft? Bzw. gibt es irgendwo bei MS
(und ich habe wirklich schon viel gesucht!) eine Seite wo Details stehen,
welche Anwendungen/Dateien bei einer asp.net Anwendung mit geladen werden.

Wie gesagt, grundsàtzlich ist das Problem des recyclings zu lösen. Aber
irgendwie würde ich gerne diese riesige virt. Speichernutzung verstehen.

Vielen Dank schon einmal
Gruß Thomas Goede


,
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
29/05/2009 - 09:11 | Warnen spam
Hallo Thomas,

"Thomas Goede" schrieb:

- die .dll hat gerade mal eine Größe von 84KByte, Gesamtgröße aller Dateien ist 168KB



Dazu kommt aber dann noch das Framework bzw. die verwendeten Libraries.

1) Welche Gründe kann es geben, dass auf meiner Testmaschine (virt. Server) nur 220MB, beim Kunden aber >520 MB virt. Speicher
benutzt werden.



Làuft die Anwendung im Debugmode? Schau mal, ob es eine *.pdb im BIN Ordner
gibt und/oder ob in der web.config debug="true" steht.

2) Was ist überhaupt der Grund für einen so hohen virt. Speicher und welche Dinge werden durch den IIS evtl. noch mitgeladen bei
einer asp.net Anwendung die in einem eigenen Applicationpool làuft?



Zum einen ist das dann ein komplett eigener Prozess. Zum anderen werden die
DLLs des .NET Frameworks natürlich auch geladen und verbrauchen Speicher.
Wobei mir 550 MB schon relativ viel vorkommt, wenn Du nicht gerade exzessiv
mit Session, Application oder Cache arbeitest.

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen