We're converting over an ASP site to ASP.NET and have written .NET
class libraries that are used from ASP.NET and from ASP via COM
Interop. When we deploy our changes to our production server everything
seems to run fine for about a day with page file usage in Task Manager
at around 200-300MB and the w3wp.exe process using about 180MB
(physical memory is 1GB). CPU usage hovers between 15 - 25%.
Then after one day of running fine the memory usage seems to shoot up.
The page file goes up to 2GB and the w3wp.exe process churns through
all available memory. CPU usage shoots up to 100%.
We've tried enabling application recycling and setting a memory cap of
600MB. Sometimes this helps and another day or two will pass before
another recycle takes place. Other times recycling occurs repeatedly
with only minutes between recycles because W3wp.exe consumes all the
memory moments after it's restarted.
Our server is running W2k3 Web Edition.
The problem appears to be caused COM Interop. Our class doesn't do much
- it basically opens an SQL connection does a few DB things and closes
the connection.
Any help would be greatly appreciated.
>> Stay informed about: COM Interop Memory Leak