locked
Application Pool Recycling RRS feed

  • Question

  • Hi, can anyone help with an issue of a web application pool recycling out of control? Recently I started a new job as a Sharepoint administrator for a MOSS 2007 farm. The first week I noticed the application pool for the main site recycled every few minutes, with the following event in the System log:

    Event Type: Information
    Event Source: W3SVC
    Event Category: None
    Event ID: 1077
    Date:  **
    Time:  **
    User:  N/A
    Computer: **
    Description:
    A worker process with process id of '3848' serving application pool '**' has requested a recycle because it reached its virtual memory limit.

    In the application pool properties, Memory Recycling, Maximum Virtual Memory was set to 750 MB, and Maximum Used Memory was set to 187 MB. Looking at Task Manager, it looked like the w3wp.exe process was hitting the Maximum Used Memory threshold, and nowhere near the Virtual memory limit. So I set Maximum Used Memory to 512 MB. Now, the 1077 are still happening every few minutes (and the process appears to be using more memory, recycling itself at around 250 MB). Now I'm not 100% sure the 1077's are related to memory usage.

    Is it necessary to cycle IIS services after changing Maximum Used Memory setting?

    If setting Maximum Used Memory is not the solution, any ideas on how to prevent so many application pool recycles?

    Many thanks in advance,

    Chris
    • Edited by Mike Walsh FIN Tuesday, February 22, 2011 9:01 AM Madness removed from Title. Flame not problem description
    Tuesday, February 22, 2011 3:56 AM

Answers

  • Are you using Servers with 32 bit or 64 bit?

    Validate if you have custom code if yes verify if they do the best patrices with Dispose and manage the Memory leaks.
    Best Practices: Using Disposable Windows SharePoint Services Objects
    http://msdn.microsoft.com/en-us/library/aa973248(v=office.12).aspx
    Also validate what are the Hardware requirement and recomendations from Microsoft...

    Can recomend this article "Tune Web server performance (Office SharePoint Server)"
    http://technet.microsoft.com/en-us/library/cc298550(office.12).aspx


    André Lage Microsoft SharePoint, CRM and Sybase Consultant
    Blog:http://aaclage.blogspot.com
    Codeplex:http://spupload.codeplex.com/http://simplecamlsearch.codeplex.com/
    Tuesday, February 22, 2011 2:14 PM
  • Hi Chriswight,

     

    I am glad to hear that the issue is resolved.

      

    If you were using 32 bit environment, by default, 2GB of virtual address space is allocated for each 32-bit Windows user mode process. A certain amount of this address space must remain unused for dynamic allocations. Additionally, some operations in Office SharePoint Server require large blocks of contiguous address space to perform dynamic allocations. The longer a process runs, the more fragmented the address space becomes. Because of this, when  the size of the Office SharePoint Server worker process exceeds 1.2 GB to 1.4 GB, the process will begin to experience out of memory errors and other anomalous events. As the process continues to consume address space the errors will get worse, eventually resulting in termination by IIS.

     

    To address this issue, we recommend that you set up the following processes on each 32-bit front-end Web server.

     

    For best results you should set IIS to recycle at specific times, and when memory usage reaches specifics levels.

     

    ·         Configure a virtual memory-based recycle to occur at 1700 MB.

    ·         Configure the memory used recycle to occur at 1000 MB.

    ·         Set the shutdown time limit to at least 300 seconds to allow long running user requests, such as large file uploads, an opportunity to complete.

    ·         Use time-based recycles in environments with regular heavy loads at certain periods of the day. Set a scheduled recycle about 30 minutes before the peak traffic starts.

     

    Failure to configure these settings on 32-bit servers may have an adverse affect on ASP.NET cache management. If you do not set a process memory limit, ASP.NET will calculate one for you. If the user mode address space is 2 GB, ASP.NET will use the lesser value of either 60% physical RAM or 800 MB. This value will be used to determine how aggressively the cache should clean up memory. Setting this value too low results in spending too much time cleaning up memory. Setting it too high allows the process to grow too large and cause OutOfMemory Exceptions and other errors.

     

    We highly recommend that you install front-end Web servers on 64-bit Office SharePoint Server 2007 on a 64-bit operating system, unless you have a significant business reason not to.

     

    Important: In a 64-bit environment, the default values for process recycling when running are generally sufficient; we do not recommend that you change them.

     

    For more information about recycling worker processes, see Configuring Worker Processes for Recycling (http://go.microsoft.com/fwlink/?LinkId=105924&clcid=0x409).

     

    For more information about Overlapped Recycling And SharePoint , please refer to the following articles:

     

    http://technet.microsoft.com/en-us/library/cc262996(office.12).aspx

     

    http://blogs.msdn.com/b/steveshe/archive/2007/12/17/overlapped-recycling-and-sharepoint-why-sharepoint-requires-it.aspx

      

    Rock Wang

    TechNet Subscriber Support in forum

    If you have any feedback on our support, please contact tngfb@microsoft.com


    Regards, Rock Wang Microsoft Online Community Support
    Wednesday, February 23, 2011 5:43 AM

All replies

  • Are you using Servers with 32 bit or 64 bit?

    Validate if you have custom code if yes verify if they do the best patrices with Dispose and manage the Memory leaks.
    Best Practices: Using Disposable Windows SharePoint Services Objects
    http://msdn.microsoft.com/en-us/library/aa973248(v=office.12).aspx
    Also validate what are the Hardware requirement and recomendations from Microsoft...

    Can recomend this article "Tune Web server performance (Office SharePoint Server)"
    http://technet.microsoft.com/en-us/library/cc298550(office.12).aspx


    André Lage Microsoft SharePoint, CRM and Sybase Consultant
    Blog:http://aaclage.blogspot.com
    Codeplex:http://spupload.codeplex.com/http://simplecamlsearch.codeplex.com/
    Tuesday, February 22, 2011 2:14 PM
  • Hi, thanks, we set the maximum memory usage in the Recycling section of the application pool Properties to the settings recommended by Microsoft. So far today there have been no 1077 events, and the application pool has not cycled. Many thanks for the references.
    Wednesday, February 23, 2011 5:32 AM
  • Hi Chriswight,

     

    I am glad to hear that the issue is resolved.

      

    If you were using 32 bit environment, by default, 2GB of virtual address space is allocated for each 32-bit Windows user mode process. A certain amount of this address space must remain unused for dynamic allocations. Additionally, some operations in Office SharePoint Server require large blocks of contiguous address space to perform dynamic allocations. The longer a process runs, the more fragmented the address space becomes. Because of this, when  the size of the Office SharePoint Server worker process exceeds 1.2 GB to 1.4 GB, the process will begin to experience out of memory errors and other anomalous events. As the process continues to consume address space the errors will get worse, eventually resulting in termination by IIS.

     

    To address this issue, we recommend that you set up the following processes on each 32-bit front-end Web server.

     

    For best results you should set IIS to recycle at specific times, and when memory usage reaches specifics levels.

     

    ·         Configure a virtual memory-based recycle to occur at 1700 MB.

    ·         Configure the memory used recycle to occur at 1000 MB.

    ·         Set the shutdown time limit to at least 300 seconds to allow long running user requests, such as large file uploads, an opportunity to complete.

    ·         Use time-based recycles in environments with regular heavy loads at certain periods of the day. Set a scheduled recycle about 30 minutes before the peak traffic starts.

     

    Failure to configure these settings on 32-bit servers may have an adverse affect on ASP.NET cache management. If you do not set a process memory limit, ASP.NET will calculate one for you. If the user mode address space is 2 GB, ASP.NET will use the lesser value of either 60% physical RAM or 800 MB. This value will be used to determine how aggressively the cache should clean up memory. Setting this value too low results in spending too much time cleaning up memory. Setting it too high allows the process to grow too large and cause OutOfMemory Exceptions and other errors.

     

    We highly recommend that you install front-end Web servers on 64-bit Office SharePoint Server 2007 on a 64-bit operating system, unless you have a significant business reason not to.

     

    Important: In a 64-bit environment, the default values for process recycling when running are generally sufficient; we do not recommend that you change them.

     

    For more information about recycling worker processes, see Configuring Worker Processes for Recycling (http://go.microsoft.com/fwlink/?LinkId=105924&clcid=0x409).

     

    For more information about Overlapped Recycling And SharePoint , please refer to the following articles:

     

    http://technet.microsoft.com/en-us/library/cc262996(office.12).aspx

     

    http://blogs.msdn.com/b/steveshe/archive/2007/12/17/overlapped-recycling-and-sharepoint-why-sharepoint-requires-it.aspx

      

    Rock Wang

    TechNet Subscriber Support in forum

    If you have any feedback on our support, please contact tngfb@microsoft.com


    Regards, Rock Wang Microsoft Online Community Support
    Wednesday, February 23, 2011 5:43 AM