08th May 2008
High Performance Web Sites
One of the books I picked up recently is
High Performance Web Sites : Essential Knowledge for Frontend Engineers by Steve Souders
Despite its small size, it is full of interesting suggestions for making web sites load faster. On page 5 he puts forth the Performance Golden Rule:
“Only 10 to 20 % of the end user response time is spent downloading the HTML document. The other 80 to 90 % is spent downloading all of the components for the page.”
Now most of the discussions I have had around the office center around how to optimize the back end (e.g., improving query performance, what PHP functions are faster than others). This book only mentions these subjects in regards to how over emphasized they tend to be (not implying they are not important, but tend to over shadow front end optimization).
The book goes on to outline 14 rules. They are as follows in order of importance:
- Make fewer HTTP requests.
- Use a content delivery network.
- Add an expires header.
- Gzip contents.
- Put style sheets at the top.
- Put scripts at the bottom.
- Avoid CSS expressions.
- Make JavaScript and CSS external.
- Reduce DNS lookups.
- Minify JavaScript.
- Avoid Redirects.
- Remove duplicate scripts.
- Configure Etags.
- Make Ajax cacheable.
If you are interested in the explanations as to why these dramatically decrease page load time, I would highly recommend picking the book up.
And in case you are wondering why you should listen to this guy at all, he is the chief performance officer at Yahoo.

Leave a Reply