• We have a web server with many Web Sites.
  • Each web site has it's own application pool.
  • Currently all application pools use the identity of the same domain user.

When one of the sites starts to use 100% of CPU we cannot see which site is responsible. One solution is to give each one a different identity.

Is there a way to identify which application pool is connected to which site without giving them different identities?


IIS 7.x has a built-in worker process view, including (per w3wp process):

  • Application Pool Name.
  • Process ID.
  • State.
  • CPU %.
  • Private Bytes (KB).
  • Virtual Bytes (KB).

To access this view, simply:

  1. Open up the IIS Manager (inetmgr)
  2. Select the Web Server in the left pane
  3. Double-click the "Worker Processes" feature icon in the center pane
  4. Voila: Worker Process view

Technet Reference

  • Nice - i did not know that (or had forgotten it.) – mfinni Apr 26 '13 at 16:07

From command line run as administrator in %windir%\system32\inetsrv appcmd list wp

This will show you the processid associated with each site that you can compare with the task manager.


Use Process Explorer from MS - the executable details on the process that is soaking up your CPU, will show you the string that corresponds to your app pool.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.