In this four part series on performance we’ve reviewed the fundamentals of assessing performance including using the tools built into Windows to make these assessments. We’ve covered the considerations for session state, and we’ve walked through the benefits and problems with caching. However, we’ve not covered in detail what to do once you’ve assessed performance or how to leverage what you’ve learned about session state and caching to solve real world problems. In this article we’ll be focused on isolating problems into solvable units and what to do when you believe that things just can’t fixed.
Tracking Down Problems
If you’ve found out that you have a performance problem and have managed to isolate it as a CPU problem on the web front end servers, then what? The answer — no matter what you’ve isolated the problem to — is to continue to isolate it further until you no longer can. In most cases, the process of improving performance is about 90% finding the problem and 10% fixing the problem. So the most coarse metrics — those we talked about in the first part of this article series — are the first step on looking at the problem to determine what it may be. By implementing these metrics at each server in a system it is usually, but not always, possible to determine the key bottleneck for a system.
Read More at http://www.developer.com/design/article.php/3832961