We have some performance problems with one of our applications. I thought about using something like dotTrace to find out where the problems are, but dotTrace would probably degrade performance even more.
What's the best way to profile an application that's on a prod environment w/o affecting performance too much?
Making a SQL Query More Efficient
C# List<T> vs IEnumerable<T> performance question
How to improve datagrid perfomace when using itemrenderer withing datagrid?
Other than that, you can gain a lot by using performance counters.
What are the issues with non-static inner classes and serialization in Java
If the built-in counters don't help, you can create your own..
looping over char or substring(): Efficiency in C#?
Among other things, the performance counters may give you an idea of how to reproduce the performance problems through load testing..
Merge sort in Haskell
The next idea is to narrow down the area you're interested in.
unique constraint in mysql
There's no sense impacting performance for the entire application if it turns out to be your web service access that's slow..
Parallelogram contains Point
Next, be sure to have instrumented your application, preferably by using configuration.
The Enterprise Library Logging Application Block is great for that, as it allows you to add the logging to your application, but have it configured off.
Then, you can configure what kind of information to log, and where to log it to.. This gives you choices about how expensive the logging should be, from logging to the event log to logging to an XML file.
And you can decided this all at runtime.. Finally, you're not going to be able to use dotTrace or something else that requires restarting IIS an adding code to your running application.
Not in production.
The ideas above are for the purpose of not needing to do so..
Best to use it on a test environment to identify the bottle necks.
It will help you to determine whats the problem.
. Here are some details about performance counter... http://msdn.microsoft.com/en-us/library/fxk122b4.aspx. http://msdn.microsoft.com/en-us/library/ms979204.aspx. http://www.codeproject.com/KB/dotnet/perfcounter.aspx.