I am new to profiling applications. As of now I have to work on a .net connected system which comprises of client server architecture. Server comprises of server wcf services hosted as windows services and an asp.net mvc 2 application. The client is a wpf application. There are other windows services running that perform synchronization between client and server.
I have come across ops team mentioning that the application should not go beyond 50% memory usage and similar 90% cpu utilization.
My question is
1) how do they come with that numbers ? In other words, what determines that a particular application will have a certain benchmark in terms of cpu and memory usage.
2) What are some of the performance counters apart from cpu and memory usage that can provide insights into the application.
I am planning to using dotTrace or ANTS profiler? Based on answers to this What Are Some Good .NET Profilers? question it seems ANTS would be the way to go. I am more interested in the knowing the performance counters that should be taken into consideration.
Thank you.