Very high memory used by w3wp process RRS feed

  • Question

  • We have in a production setup a site for which the w3wp is taking up all available memory.
    To see how far it would go we put in a server with more RAM, and it went up to 13GB before we took the server out again.
    The obvious problem here would be a memory leak, but the site isn’t an ASP.NET site, and we have checked memory dump and found nothing. Also after disabling all possible caching settings it didn’t go away.
    The site is written in Coldfusion running under Railo, using Boncode connector between Tomcat and IIS. But we think the issue is with our IIS setup.
    The site has about 20 virtual directories set as application. These are used to redirect customer to international versions of the site.
    Like this:
    www.site.com/   is the normal version (which is UK),
    www.site.com/us/   is the US version,
    www.site.com/fr/   is the French version,

    These virtual directories (us, fr, …) point back to the root of the site.
    If www.site.com points to c:\inetpub\wwwroot\site, all the virtual directories also point to that folder.
    We have put the virtual application onto a different application pool and it is that process that is taking up the memory. The process for the normal site always stays around 1.5GB.
    A few simple tests showed that the memory quickly grows to over 1GB with the first 20 requests to various pages.
    The complete size of the site is only 400MB, excluding product images, so what is IIS storing in memory?

    Here are some system specs:
    Railo final
    Windows Server 2012 (6.2) 64bit
    Java 1.7.0_60 (Oracle Corporation) 64bit
    IIS 8.5

    Any insights into this would be greatly appreciated.

    Peter De Ranter

    • Edited by PeterDeRanter Wednesday, May 20, 2015 10:44 AM
    • Moved by Fred Bao Thursday, May 28, 2015 3:34 AM IIS Related
    Wednesday, May 20, 2015 9:02 AM

All replies

  • Hi Peter,

    Issues like this are not easy to debug without asking many questions so here it goes.

    So a complete memory dump did not turn up anything? How did you analyze the memory dump file?

    Also are you using any native objects that is not being released? Do you use any native resources that are not being closed like filestreams or memorystreams that are read into memory?

    Is there any backend business logic or is this site only serving static content? If there is business logic where/how is this written?

    Mark as answer or vote as helpful if you find it useful | Igor

    Wednesday, May 20, 2015 11:16 AM
  • We analyzed the memory dumps with DebugDiag versions 1 and 2.

    I don't see how we could be using any native objects or resouces since the site is in Coldfusion, meaning all pages are processed in Railo, which happens in the seperate tomcat process.
    The resulting pages are served to IIS through the BonCode handler, and IIS send that result to the client.

    So all business logic and page processing is done in a different memory process.

    Peter De Ranter

    Wednesday, May 20, 2015 12:28 PM
  • Since you're not using an ASP.NET application the CLR forum isn't the best place for your issue.

    Consider posting this in the IIS forums and/or using whatever support options the various involved pieces offer, especially Boncode as it probably has code that runs inside IIS.

    Wednesday, May 20, 2015 12:55 PM