Popular tips

How many IIS worker processes should I have?

How many IIS worker processes should I have?

One worker process is enough in my opinion. Consider that requests are queued, not rejected, when another request is being served and no more threads are available in the process (I’m assuming that the process is multi-threaded). By defaults one Worker process for a application pool.

How do I check w3wp process?

Via the Windows Task Manager, you can see processes named w3wp.exe. Within the IIS management console, you can view more details. Open IIS manager and on the left side click on the name of your computer. You will then see a similar list of icons on the right as shown in the screenshot below.

Does IIS use multiple cores?

IIS will by default take advantage of a multi-core CPU. [If you want to set processor affinity, you need to explicitly configure this.]

What does the IIS application pool do for w3wp?

IIS application pools also provide a bunch of advanced settings. These impact the behavior of w3wp and your IIS worker process. Including things like what Windows user account it runs as, auto restarting of the process, auto shutdown, and more.

Where can I find the w3wp.exe process ID?

You can easily see the name of the IIS application pool and the Process Id for the running w3wp.exe process. If you want to go even a step further, you can double click on a worker process to see which web requests are currently executing within your IIS worker process.

What are the settings of the IIS worker process?

They have two basic settings which are related to the version of .NET being used. An IIS Worker Process (w3wp.exe) handles the web requests sent to the IIS web server for the configured IIS application pool. IIS application pools also provide a bunch of advanced settings. These impact the behavior of w3wp and your IIS worker process.

How to troubleshoot IIs worker process ( w3wp ) high CPU?

Using an APM solution, like Retrace, can help you track performance over time of your entire application. It can also tell you which specific web requests take the longest. APM tools use . NET profilers and other data collection techniques to understand the performance of your application down to the code level.