Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


dllhost.exe

Postades av 2004-06-14 09:57:31 - Mathias Jonson, i forum asp - allmänt, Tråden har 11 Kommentarer och lästs av 653 personer

Har en burk med Windows server 2003 där jag kör asp med MySQL.

Mitt problem är att varje gång jag gör en koppling till min mysql databas tar dllhost.exe massa minne som aldrig frigörs.

Vad ska jag göra?????


Svara

Sv: dllhost.exe

Postades av 2004-06-14 11:34:08 - Oskar Johansson

Har du kollat att du alltid stänger anslutningen till mysql-db:n?


Svara

Sv: dllhost.exe

Postades av 2004-06-14 13:17:26 - Andreas Hillqvist

Det är väl under dllhost.exe som ASP.DLL anropas. Program brukar inte frigöra minne medans det kör.
Om du utformar resurssnålla sidor kommer desa inte ta lika mycket resurser i anspråk.


Svara

Sv: dllhost.exe

Postades av 2004-06-14 17:18:37 - Mathias Jonson

Stänger allt som man ksa göra.
Får samma problem även när jag "bara" kopplar upp mig mot databasen.


Svara

Sv: dllhost.exe

Postades av 2004-06-15 01:31:57 - Pelle Johansson

Du kommer aldrig komma undan att den filen finns, ibland flera gånger. Det beror precis på som andreas säger att så fort någon surfar till din webbserver så kommer servern reservera trådar till din databas, sessionsobjekt och liknande. Det ingår helt enkelt i din webbserver.

Under ett normalt pass på pellesoft så brukar 3-4 dll:er ligga igång med 40-50mb reserverat minne så om de är stora skall du vara glad - då har du hög aktivitet på din server ;-)


Svara

Sv: dllhost.exe

Postades av 2004-06-15 09:47:43 - Mathias Jonson

Visst är det kul med många besökare. Men efter 3-4 dagar ligger filen på cirka 110 mb.


Svara

Sv: dllhost.exe

Postades av 2004-06-15 10:31:49 - Andreas Hillqvist

Det är ingen "fil". Det är ett program. Om du inte har så många besökare kan det bero på att sidorna inte är effektivt skrivna eller att du inte stänger alla dinna recordset och databasanslutningar.

Om dina sidor är effektiva bör den inte växa onormalt stort.


Svara

Sv: dllhost.exe

Postades av 2004-06-15 10:54:33 - Pelle Johansson

som sagt, allting du skriver set xx = server.createobject på ... skall även ha

xx.close
set xx = nothing

Om du inte gör det så ligger connections och objekt öppna och tar minne tills sessionerna dör ut. Ibland kan de ligga längre, likaså med sessionsobjekt om du exempelvis gör felet att lägga hela recordset i sessioner så tar det väääldigt mycket plats. Så att gå igenom de mest frekvent användna (hmm, det ordet lät fel) sidorna och kollar att du stänger connection på varje sida så bör det vara så optimerat det kan vara.

Ha aldrig en .open på connection i en includefil för då är det lätt att du glömmer stänga och frigöra den på varje sida, oavsett om den används eller inte.


Svara

Sv: dllhost.exe

Postades av 2004-06-15 11:09:44 - Andreas Hillqvist

Många som använder execute metoden:
<code>
set rs1 = con.Execute("SELECT...")
vTemp1 = rs1(0)

set rs2 = con.Execute("SELECT...")
vTemp2 = rs2(0)

set rs3 = con.Execute("SELECT...")
vTemp3 = rs3(0)
</code>
Frigör inte dem med close. Även om det borde göra det då det fortsätter var öppet först tills variablen frigörs.

Ett mer korrekt sätt att skriva samma kod är:
<code>
set rs1 = con.Execute("SELECT...")
vTemp1 = rs1(0)
rs1.Close
Set rs1 = Nothing

set rs2 = con.Execute("SELECT...")
vTemp2 = rs2(0)
rs2.Close
Set rs2 = Nothing

set rs3 = con.Execute("SELECT...")
vTemp3 = rs3(0)
rs3.Close
Set rs3 = Nothing
</code>
Det är i detta fallet dessutom onödigt att använda tre instanser av recordset. Man kan välja att återanvända första instansen:
<code>
set rs = con.Execute("SELECT...")
vTemp1 = rs(0)
rs.Close

rs.Open "SELECT...", con
vTemp2 = rs(0)
rs.Close

rs.Open "SELECT...", con
vTemp3 = rs(0)
rs.Close

Set rs = Nothing
</code>
Eller för att var konsekvent och öppna alla recordset på samma sätt:
<code>
set rs = Server.CreateObject("ADODB.Recordset")

rs.Open "SELECT...", con
vTemp1 = rs(0)
rs.Close

rs.Open "SELECT...", con
vTemp2 = rs(0)
rs.Close

rs.Open "SELECT...", con
vTemp3 = rs(0)
rs.Close

Set rs = Nothing
</code>
Det sista sättet är att rekomendera. Helst då man vid t. ex. vid hämtning av statestig ställer flera fråger till databasen.



Svara

Sv: dllhost.exe

Postades av 2004-06-15 11:48:25 - Mathias Jonson

Så ser min koppling till databasen ut. Bara genom att uppdatera den här koden tar dllhost.exe minne

<%
dim adoConn

set adoConn = Server.CreateObject("ADODB.Connection")
adoConn.Open "DSN=mysql"

if adoConn.errors.count = 0 then

response.write "Connected Successfully!"

adoConn.close
set adoConn = nothing


end if
%>


Svara

Sv: dllhost.exe

Postades av 2004-06-15 14:50:13 - Andreas Hillqvist

Det kan vara att ODBC drivrutinen inte återanvänder anslutningar. Du kan ju testa dig att använda EN OLEDB provider. Du borde slippa att ladda ODBC lagret. På så sätt spara resurser.
JAg är osäker på om det är i OLEDB eller ADO connection poolen ligger i.


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 786
27 960
271 761
627
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies