07.11.2014 Views

Enterprise Library Test Guide - Willy .Net

Enterprise Library Test Guide - Willy .Net

Enterprise Library Test Guide - Willy .Net

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Test</strong>ing for Performance and Scalability 169<br />

Defining Performance Criteria<br />

The most common approach to determining an application’s performance is to measure<br />

its response times and the resources it uses against criteria, such as the application’s<br />

budgets for resources, its business needs, and its service level agreements.<br />

However, it is not always possible to use these criteria with <strong>Enterprise</strong> <strong>Library</strong>,<br />

treated as a whole. The reasons for this are:<br />

●<br />

●<br />

●<br />

There is no single application that encompasses all the application blocks.<br />

Different applications require different resources.<br />

Different applications have different goals.<br />

Because the application blocks cannot be tested in the context of a specific application,<br />

another approach is to measure an application block’s performance goals<br />

against a baseline. This is the approach used with <strong>Enterprise</strong> <strong>Library</strong>. The baselines<br />

are the .NET Framework and <strong>Enterprise</strong> <strong>Library</strong> 1.1. In this case, an example of a<br />

performance goal may be that an <strong>Enterprise</strong> <strong>Library</strong> method should have less than a<br />

15 percent overhead when compared to the overhead of the equivalent .NET Framework<br />

method.<br />

For example, the cost of adding an item to the ASP.NET cache serves as a baseline<br />

measurement for the Caching Application Block’s equivalent Add method. By<br />

comparing the two costs, the overhead of the <strong>Enterprise</strong> <strong>Library</strong> application block<br />

becomes apparent.<br />

Measurements of the performance criteria are collected with the Windows Performance<br />

Monitor (Perfmon.exe). Here is the complete list of performance criteria for<br />

<strong>Enterprise</strong> <strong>Library</strong>–January 2006:<br />

●<br />

●<br />

●<br />

●<br />

Overhead cost<br />

Initialization cost<br />

Consistency<br />

Availability<br />

The next sections discuss these subjects.<br />

Overhead Cost<br />

The overhead cost is expressed as a percentage. It is the difference between the response<br />

time of an application block (or one of its system resources) when it performs<br />

a function and the response time of the .NET Framework and <strong>Enterprise</strong> <strong>Library</strong> 1.1<br />

when it performs the same function. The overhead cost is expressed as a percentage<br />

of total transactions (this is also termed “total hits” for Web applications) and as a<br />

percentage of transactions per second. The next sections describe the calculations for<br />

determining the overhead costs.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!