Thursday, 15 August 2013

c# - How to detect High CPU and long response time issues with Asp.NET Web Api -


We are running ASP.Net WebApi on the back of HAProxy 3 HAProxy distributes requests in randomly in these 3 instances is.

These examples link to the Mongodb, Radis and some window services.

Generally, w3wp.exe uses the% 30 CPU on each API server.

From time to time (sometime in one hour), API decides to use a higher CPU than the server. Regarding this behavior, we begin to see increasing response times. As long as HAProxy does not see 10000 seconds response time and these number increases until the decision of the route requests for the other two servers are all in 10-20 seconds. After some time, this server goes back to its normal position. And is starting to request again. After a few minutes, another server does the same thing, it keeps on running and continues.

We are using new remnants but since the app is a web API application, we have not found any useful information. We monitor all our servers (radices, manga and windows services) for CPU usage, memory usage, network traffic and I / O, but we do not see any significant load during the above outage.

How can we find out the reason behind the behavior of this application?

A good alternative would be to use something like mini dump Explorer and then WinDBG or otherwise Inspect with, what are the threads to see and further forward. I have a good blog post that can do it here:



No comments:

Post a Comment