

After a short period of monitoring and memory limit adjusting you should be able to establish a state where the recycling doesn’t happen too often yet the memory is still kept under control.If you've done any coding in ASP.NET then you know how important debugging is. You don’t want this to happen too often since it requires additional CPU cycles and disk IOs. This is useful to monitor how often does the recycling occur for each worker process. On the following screen you can amend the recycling logging options. Select the Private memory usage (in KB) option and type in the desired memory limit and click Next. You will have different options when to recycle the worker process based on time or memory. To achieve this, just right click the application pool you want to manage and select Recycling. Once this initiation is finished, the original worker process is stopped.Īlternatively, you can also adjust the memory usage on a per pool basis.

When you apply this setting and any of the worker processes hits this limit, a new worker process for the same pool is created that will take over the processing of the requests. Scroll down to Recycling and in the Private Memory Limit (KB) type in the desired memory limit in KB. To do so, click Application Pools on the left tree menu and click the Set Application Pool Defaults on the right in the Actions menu. If the amount of memory used by the processes is in the same region, you could apply the setting to all worker processes. Note the amount of memory used by each worker process as this can give you a starting point to what level limit the memory used by each individual working process.

Here we can establish which worker process is using how much memory. This will open a view that lists the running working processes, their process IDs, CPU and most memory usage. pool identification, we need to open IIS Manager, click on the root of the navigation tree (the server name) and under IIS double click the Worker Processes icon. As you can see from the screenshot of Task Manager, it’s hard to tell which process belongs to which IIS Application Pool: IIS creates a working process for every Application Pool setup in it. In the case of IIS it’s not obvious straight away. When looking at memory used by services, in case of Exchange and SQL Server it’s fairly simple to identify the process that needs to be addressed. We also addressed the memory used by SQL server(s) in the article “How to limit SQL Server 2005/2008 memory usage”. Today’s article is a continuation to this theme of managing the memory usage on SBS 2008/2011 servers and will be talking about managing the memory used by IIS working processes. In previous articles we already addressed the management of memory used by Exchange in the article “How to limit Exchange 2010 memory usage”.
