Difference between revisions of "SitePerformanceMonitoringTools"

Line 1: Line 1:
* SitePerformance card with a 5 on it
+
<noinclude><big>[[DevelopmentPriorities]] < </noinclude>[[SitePerformanceMonitoringTools]] ('''10''') ('''[[Ethan]]''')<noinclude></big>
* Instrumentation that pinpoints where the slowness is
+
 
* Definitions of Acceptable for End to End Performance
+
== What (summary) ==
** Max Load Time for normal pages (including especially front page)
+
 
*** < 1 second is good (for each piece)
+
Instrumentation that provides a history of performance statistics for each part of the page load pipeline.
*** > 3 seconds is unacceptable
+
 
** Max Load Time for special goodness (Batch Patrol ... etc)
+
== Why this is important ==
*** Decide for each case
+
The responsiveness and performance of the site makes a big difference in how many pages visitors will view, and how often they will come back.  A poorly performing site will also wear out our active members causing some of them to leave.
* Definitions of Acceptable for pieces of the Performance pipe
+
 
 +
== [[DoneDone]] ==
 +
 
 +
Define good and acceptable times for pieces of the Performance pipe
 +
* Max cold-request to fully rendered time for normal pages (including especially front page)
 +
** < 1 second is good
 +
** > 3 seconds is unacceptable
 +
* Max Load Time for special goodness (Batch Patrol ... etc)
 +
 
 +
Record a history of how long to
 +
* lookup DNS for www.aboutus.org, images.aboutus.org, ... from different parts of the world
 +
* Setup a port 80 TCP connection with each of the squal boxes from different parts of the world
 +
* Load the frontpage without any client caching
 +
* Retrieve a memcache item from each combination of two squal boxes (one client, one memcached server)
 +
* Load the core css files
 +
* Load the core js files
 +
...
  
 
==Performance Priorities==
 
==Performance Priorities==
Line 23: Line 39:
 
#* Raw database queries
 
#* Raw database queries
  
==Issues==
+
[[Category:DevelopmentTeamProject]]
* FireFox seems to tack an extra 5 seconds or so to most page loads
+
</noinclude>
* Search hurts, a lot
 

Revision as of 04:40, 12 August 2007

DevelopmentPriorities

What (summary)

Instrumentation that provides a history of performance statistics for each part of the page load pipeline.

Why this is important

The responsiveness and performance of the site makes a big difference in how many pages visitors will view, and how often they will come back. A poorly performing site will also wear out our active members causing some of them to leave.

DoneDone

Define good and acceptable times for pieces of the Performance pipe

  • Max cold-request to fully rendered time for normal pages (including especially front page)
    • 3 seconds is unacceptable
  • Max Load Time for special goodness (Batch Patrol ... etc)

Record a history of how long to

  • lookup DNS for www.aboutus.org, images.aboutus.org, ... from different parts of the world
  • Setup a port 80 TCP connection with each of the squal boxes from different parts of the world
  • Load the frontpage without any client caching
  • Retrieve a memcache item from each combination of two squal boxes (one client, one memcached server)
  • Load the core css files
  • Load the core js files

...

Performance Priorities

  1. View normal page
  2. View random page
  3. Edit click until available
  4. Save click until rendered
  5. Render invalidated frontpage

Instrumentation Steps

  1. End to end on each
  2. Deploy instrumentation boxes in various locations
  3. Determine and instrument the pieces
    • MediaWiki profiling
    • Raw database queries



Retrieved from "http://aboutus.com/index.php?title=SitePerformanceMonitoringTools&oldid=8807486"