How to determine why my .net website app is 100% CPU bound intermittently?

I have a large (as on many pages, objects ...) asp.net web application that binds the server to 100% from time to time for no reason that I can tell. is there any way to detect which page is to blame?

I know it is asp.net, not sql, because the task manager shows w3wp.exe as the culprit.

Are there any tools for this? or profiling .net web applications?

+4
source share
4 answers

Check out this Red Gate product: http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/

It is not trivial to handle.

+2
source

If you can repeat the problem on a test server or on your own machine, you can use a profiler (one that is included with Visual Studio 2010 or whatever) to find out what is happening.

If the problem only occurs during the production process, you are probably best off the way of dumping the process when the problem occurs and analyze it with DebugDiag .

Tess Ferranddes has a lot of information about his blog on how to perform low-level analysis of application behavior on his blog, including how to use DebugDiag.

0
source

Would you happen to use GC.Collect() in your web application? Excessive calls to GC.Collect() for large applications will cause a burst of up to 100% when scanning memory to search for disposable objects. If you call GC.Collect() in quick succession, you are likely to get continuous 100% CPU usage when memory usage is high.

-1
source

Source: https://habr.com/ru/post/1343809/


All Articles