I was hosting an intranet website in Windows server 2003 with IIS6 . I noticed that the server was taking too much time to respond when the site was accessed . Then in the task manager I saw w3wp.exe(worker process for ASP.NET) was taking more than 500MB of memory.As a result the OS was using too much virtual memory .(Hard disk busy light was always on ). I went to microsoft website and saw that there is a hotfix for this problem and after applying this hotfix , a registry tweak must be done . But I couldnt find the hotfix patch to download.
I restarted the machine and everything was working fine. Then i wrote a scrip to restart the server every sunday night. It was the only solution feasible at that point of time.
I wrote a post regarding this issue in www.dotnetjunkies.com and today i got a gud reply for it. The reply is as follows.
Re: w3wp.exe taking too much memoryPosted: 02-23-2007 11:46 PM
That w3wp.exe also has been creating havoc on our servers us so we wrote a simple application to control it. Details and download here:
http://www.linkhelpers.net/w3wp_fix.asp Works for us.
Details in the link is given below:
w3wp.exe FixSomehow, somewhere, someone released some untested code and hundreds of servers are crippled. I scanned through the forums an all the fixes were red herrings. So I decided to look into it myself. Looping like a loon it just eats up CPU resources like a voracious pig. The solution I came up with was to set w3wp.exe's priority to Idle. This seemed to help but the application would eventually crash and restart with the priority defaulting to Normal. Well baby sitting an executable is not realistic.
HeartBeatHeartBeat.exe is a stand alone application that will pulse every couple of seconds and reset w3wp.exe's priority to Idle. This appears to lessen the impact but is not a permanent fix. This fix has not been tested with servers running ISAPI filters which w3wp.exe is supposed to address. There are no guarantees or do we accept any liability for the use of this fix.
Access DatabasesFor some reason I still have not figured out, an *.ldb file causes IIS worker error dialogs. Once this file is deleted, the error dialogs stop. Randy Delos Reyes was instrumental in figuring most of this out.
http://www.linkhelpers.net/public/HeartBeat.zipRemember, test this fix first before using it. We are not liable for any unforseen problems you may have. I do know that it works great for our servers.
Try your luck . :) .