A blog by Ryan Breen of CloudFloor
A month ago, I linked to the first article in a ‘Performance Research’ series by the YUI folks in which they explored how the number of HTTP requests impacts application performance. The second part of the series looks at caching.
They start by providing the delta between cached and uncached performance for yahoo.com. Uncached comes in at 2.4 seconds on average while cached takes .9. Sounds good so far. Then they do some analysis of end user traffic patterns and turn up some fairly shocking numbers — between 40 and 60% of visitors and 20% of total page views had an empty cache. That’s a large chunk of humanity having an almost 3x slower experience.
Unlike the HTTP requests discussion, where the developer has control to address these issues directly, caching happens on the client side. There’s nothing we as developers can do except build applications that perhaps don’t rely so heavily on caching to save our bacon. Frequently, we assume that caching will turn our 300kB of client side code into a forgivable one-time hit for everyone. This post throws some cold water on that theory and suggests that we do more ongoing analysis to understand the caching experience of our actual end users.