One of the less discussed, but highly informative and very thought provoking talk during Velocity 2010 was the one about TCP, latency, window sizes and its relation to web performance. The slides to this talk by â€œJohn Rauserâ€ can be found here. And thanks to Mike Bailey, there is a video recording as well.
Follow the slides as you watch the video to understand the talk.
This is a summary of the talk by Arvind Jain, Michael Kleber from Google at velocityconf about how to write widgets using same domain iframe using document.write. Speed improvements of over 90% in loading widgets with this change.
Web is slow
Avg page load time 4.9s
44 resources, 7 dns requests, 320kb
Lot of 3rd party widgets
Measurements of 3rd party widgets
9 HTTP requests, 52 kB
scripts block the main page from downloading
stylesheets blocks the main page from rendering in IE
Adsense takes up 12.8% page load time
Analytics takes up < 5% ( move to async widget )
Doubleclick takes up 11%
How to make Google AdSense â€œfast by defaultâ€
Goals / Challenges
Minimize blocking the publishers page
Show the ad right where the code is inserted
Must run in publishers Domain
Solution (ASWIFT) – Asynchronous Script Written into IFrame Tag
Make show_ads.js a tiny loader script
Loader creates a same-domain iframe (using document.write)
Loads the rest of the show_ads into the iframe by document.write() of a <script> tag
This loading of iframe is asynchronous.
Browser specific surprises
Problems with parallel downloads of same script in IE
Iframe creation inside <head> in Firefox has a problem
Requesting headers in Chrome was buggy
Forward-Back-Reload behavior is buggy (refetching instead of using cache)
Pace of Innovation â€“ Datacenter pace of innovation is increasing. The high focus on infrastructure innovation is driving down the cost, increasing reliability and reducing resource consumption which ultimate drives down cost.
Where does the money go ?
54% on servers, 8% on networking, 21% on power distribution, 13% on power, 5% on other infrastructure requirements
34% costs related to power
Cost of power is trending up
Clouds efficiency â€“ server utilization in our industry is around 10 to 15% range
Avoid holes in the infrastructure use
Break jobs into smaller chunks, queue them where ever possible
Power distribution â€“ 11 to 12% lost in distribution
Rules to minimize power distribution losses
Oversell power â€“ setup more servers than power available. 100% of servers never required in a regular datacenter.
Avoid voltage conversions
Increase efficiency of conversions
High voltage as close to load as possible
Size voltage regulators to load and use efficient parts
High voltage direct current a small potential gain
Mechanical Systems â€“ One of the biggest saving is in cooling
What parts are involved ? – Cooling tower, heat exchanges, pumps, evaporators, compressors, condensers, pumpsâ€¦ and so on.
Efficiency of these systems and power required to get this done depends on the difference in the desired temperature and the current room temperature
Separate hot and cold islesâ€¦ insulate them (donâ€™t break the fire codes)
Increase the operating temperature of servers
Most are between 61 and 84
Telco standard is 104F (Game consoles are even higher)
Limiting factors to high temp operation
Higher fan power trade-off
More semiconductor leakage current
Possible negative failure rate impact
Avoid direct expansion cooling entirely
Air side economization
Higher data center temperature
Particulate and chemical pollution
Current networks are over-subscribed
Forces workload placement restrictions
Goal: all points in datacenter equidistant.
Mainframe model goes commodity
Competition at each layer rather than vertical integration