Solved

w3wp.exe process running frequently at 100% CPU

Posted on 2008-10-21
3
1,520 Views
Last Modified: 2008-11-11
I have two IIS web servers hosting a lot of custom developed ASP.NET web applications. The two web servers are hosting the same content in a load balanced manner.

Very frequently the CPUs on both boxes spin up to 100% utilisation and the offending process is the w3wp.exe process. I believe that the problem is to do with the code in one of these ASP.NET applications but I am not sure how to identify which one.

I'm currently running ~30 Applications in the one DefaultAppPool and the w3wp.exe process is regularly taking up 300 MB of RAM.

What can I do to identify the problem code?

Thanks

Mat
0
Comment
Question by:it-services
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 11

Expert Comment

by:AnthonyP9618
ID: 22773070
Download the IIS Debug tools... Probably the most helpful in looking for IIS problems and offending code.

http://www.microsoft.com/downloads/details.aspx?FamilyID=01c4f89d-cc68-42ba-98d2-0c580437efcf&DisplayLang=en
0
 
LVL 4

Accepted Solution

by:
Interserv earned 500 total points
ID: 22773332
We recently ran into a similar issue.  w3wp.exe is the process for the application pool.  If you can split the application pool between the 30 different Applications it will be easier to debug.  I found IISstate and DebugDiag1.1 the easiest tools for debugging.  Use IISstate for gathering a dump and DebugDiag for looking into the dump.

DebugDiag:
http://www.microsoft.com/downloads/details.aspx?FamilyID=28bd5941-c458-46f1-b24d-f60151d875a3&displaylang=en

IISstate:
http://www.iisfaq.com/default.aspx?view=P197

You can also use a Sysinternal called Procexp.exe or process explorer.  It is like Task Manager on steroids.  You can take a look at memory and CPU utilization of each w3wp.exe process running (one for each application pool).  This will help you identify which app pool is spiking system resources and narrow down the code.  Then you can run your debug with the tools already mentioned.

This was somewhat helpful in understanding thing more:
http://blogs.msdn.com/david.wang/archive/2005/08/29/HOWTO_Understand_and_Diagnose_an_AppPool_Crash.aspx

0
 
LVL 1

Author Comment

by:it-services
ID: 22937112
Thanks Interserv

I split up the Applications into different app pools which helped me identify which one had the problem code.


0

Featured Post

What Is Transaction Monitoring and who needs it?

Synthetic Transaction Monitoring that you need for the day to day, which ensures your business website keeps running optimally, and that there is no downtime to impact your customer experience.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When it comes to showing a 404 error page to your visitors, you do not want that generic page to show, and you especially do not want your hosting provider’s ad error page to show either. In this article, I will show you how to enable the custom 40…
A phishing scam that claims a recipient’s credit card details have been “suspended” is the latest trend in spoof emails.
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …
In this video we outline the Physical Segments view of NetCrunch network monitor. By following this brief how-to video, you will be able to learn how NetCrunch visualizes your network, how granular is the information collected, as well as where to f…

688 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question