Forum Moderators: open
I found this thread here, but didn't see a solution to the problem.
[webmasterworld.com...]
The problem only seems to happen when the memory usage goes over ~1.1GB... When I reboot of course the memory usage is set back to normal but after 6 or so hours it climbs right back up and that's when i start getting the errors.
The server is a dual xeon with 2GB of memory
Any ideas on how to fix this issues?
The server runs around 50 or so sites and processor usage is pretty steady at around 25%. A few of them are very high traffic sites with thousands of users on at all times.
Another member (JuDDer) on the forum helped me come up with a work-around... That is to automatically recycle the worker processes when the memory gets to 1GB. So far it's working but the drawback is that all server session state is lost when the worker proecesses are recycled.
What other info would you need to know?
I don't believe the sites should use that much ram. I believe the problem to be that their's a leak in memory. When I restart the server the memory usage quickly goes to around 300 or 400 MB for the w3wp.exe process and then steadily climbs to 1.1GB.
RS.Close() : Conn.close
set rs = nothing : set conn = nothing
The only 3rd party objects installed on the server are jMail and aspsmartupload, which I had installed on the other dedicated server that used run these websites without this problem.
There are ASP.NET sites on the server but I'm assuming the problem is in the ASP based sites simply because they make up for 95% of the traffic to the server.
Of course if you think i'm incorrect in thinking that way, perhaps I should disable caching on my asp.net sites to see if that's the problem?
That and any database connections are the only ones that I can come up with though.
When the "Out of Memory" errors show up there is 1GB of memory used and something like 600 or 800 still available.
So another question that arises is that if the problem was that there was too much traffic, wouldn't the "Out of Memory" errors show up after ALL the memory was used up instead of after 1GB of memory was used up?
I think I'll try setting up the busiest of the 40 sites on a dedicated server and see how that goes.
Well, I'm not sure what would be considered excessive. I can say that all 40 of the sites do rely on session variables.
bytes in session state = bytes stored per user in session state * (number of visitors in a 20 minute period)
If that's going in to hundreds of megabytes, then it's excessive use.
As for ASP.Net page caching, I'd turn it off for a 24 hour period and see what happens to your memory usage (reboot after changing the caching status)
Actually, could you put the ASP applications in separate application pools. You might then be able to see which one is eating up the memory, although they may all be if they are similar sites..
Without code, it's very difficult to track this down though....