What Is Application Performance?

   

Applications exhibit several important kinds of performance, including:

Real performance has to do with how fast your application actually calculates or performs operations. You can combine various techniques of code optimization to produce an application that is very fast.

Perceived performance is about how fast the application looks and feels to the user. While this is often related to real performance, it is different because it may employ techniques contrary to those used to achieve real performance. For example, your application may use a large client-side cursor to avoid frequent database access and network traffic. The client-side cursor will provide very fast user response — at the expense of a larger packet of network traffic and slower initial response time.

Consistent and reliable performance characterizes an application that is stable, scalable, and always available. This involves certain design decisions that may reduce real performance. For example, the use of Microsoft Message Queue Server (MSMQ) to handle queuing imposes a small performance penalty due to its processing overhead. The benefit, however, is that as the workload increases, the application will gracefully scale and still continue to perform real work.

Applications that perform best are designed to simultaneously satisfy all of these performance targets. Of course, an application cannot always do that, but high-performance data access requires that your design converge on all of these targets most of the time.

For More Information   For information on testing the performance consequences of your proposed application design, see Application Performance Explorer Concepts. To evaluate the performance of an existing application or components, see Visual Studio Analyzer Concepts. These topics are available online in MSDN Library Visual Studio 6.0.