I was excited when I first spoke to the DevCentral team about deploying WebAccelerator, as what they were faced with was exactly the same problems I hear from customers on a regular basis.  clip_image002  Web applications have evolved over the years from small, fairly static "brochureware" to larger and more interactive applications.

To the right is a copy of the DevCentral homepage in June of 2003 courtesy of The Way Back Machine.  Looks slightly different than what you're looking at today. As the site matured the number and types of objects on the homepage grew:

  • In 2003 there were 34 objects downloaded
  • In 2009 there are 63 objects downloaded.
  • Content types in 2003 were HTML, GIFs, JavaScript, and Cascading Style Sheets.
  • Content types in 2009 are HTML, JavaScript, Cascading Style Sheets, GIFs, JPEGs, Flash Shockwave  and Flash Video.  Looking beyond the homepage the site today also contains mp3s. 

The question may be asked if this type of growth and change in a web application is common or if this is out of the ordinary.  The article "Average Web Page Size Triples Since 2003" by Andrew King shows that the growth of the DevCentral page is within normal ranges.  Between 2003 and 2008 "the number of objects in the average web page nearly doubled from 25.7 to 49.9 objects per page. "

Not only has the number of objects expanded but applications are reaching a more global audience.  Having to deliver large amounts of objects over high latency links is a serious problem when it comes to web application performance.  Here's a sample of some recent ping tests I've done from and to various locations over the last couple of weeks:

From To Ping
Singapore Office Seattle, WA 240 ms
Singapore Hotel Seattle, WA 498 ms
London Office Seattle, WA 200 ms
London Home Office Auckland, New Zealand 575 ms
London Home Office Helsinki, Finland 88 ms

Trying to deliver 50 or more objects to a user that is experiencing 200 ms or more in latency is going to result in very slow loading pages.  It's not uncommon for pages to take 15 seconds or longer with latencies as listed above.  If visitors are used to pages that take 5 seconds or less will they really wait around for 3 times longer?