Performance Testing For The Masses

"FAST is cool, huh" - good friend of mine told me.

No doubt.

How do I identify the bottleneck with architecture like this?

  • Is it Browser starving resources for client side JavaScript/AJAX heavy processing?
  • Is it jumbo Http Responses (ViewState for example)?
  • Is it Web Server processing takes my time?
  • Is it Application Server (let's assume it is Web Services) takes my time?
  • Is it about DB processing?

Here is the set of tools and steps for sanity check when experiencing performance hits for web applications:

Measuring User experience (Ux) time

Information gathered during this step is the overall latency that end user would experience

Factoring browser processing time

Information gathered during this step can reveal what content type is served back before it get processed by Browser. Here is an example if the data collected by Fiddler (free download):

RESPONSE BYTES (by Content-Type)
--------------
          image/gif:            344
           ~headers:            12,017
          text/html:            66
            text/xml:            1,107
          text/plain:            687
application/json:            104,497

Fiddler gives also time to last byte for each resource too:

 

Understanding Web Server processing time (ASPX and ASMX)

Information gathered during this step can tell you which server - Web Server that serves Web Pages or Web Server that serves Web Services - consumes most of the time. Obviously former should be greater :)

For that purpose set time-taken property to be logged by IIS:

 

Measuring DB processing time

I'll leave it for another day

 

Having all this data at hand one can go ahead and focus on the troublemaker.

Performance Engineering in details is here https://msdn.com/Perf (redirects to https://msdn2.microsoft.com/en-us/library/ms998530.aspx)

 

Enjoy

Comments

  • Anonymous
    March 28, 2007
    The comment has been removed
  • Anonymous
    August 16, 2007
    During recent engagement we tried to improve performance of some web page. Original response time was
  • Anonymous
    November 02, 2007
    Simple examination of IIS logs can reveal potential performance issues related to ASP.NET web applications,
  • Anonymous
    January 01, 2008
    During recent few engagements with my customers I've noticed  VIewState is extensively [unintentionally]
  • Anonymous
    January 16, 2008
    Ever wondered why your application unreasonably slow? You have it all - most powerful hardware, your
  • Anonymous
    January 21, 2008
    Care about performance? Do you write your code with performance in mind? Want little help to spot performance
  • Anonymous
    March 08, 2008
    Building ASP.NET web applications? Plan to serve thousands of users? Would you like to see how your application
  • Anonymous
    April 07, 2008
    PDD - Performance Driven Development presentation by Eran Kolbis made him my Super Hero! by Xurble Eran
  • Anonymous
    April 20, 2008
    These free performance tools will save you time and money identifying performance bottlenecks. Your customers
  • Anonymous
    April 28, 2008
    Chatty database access is the surefire way for slow performance caused by  resources starvation