Top methods for Faster, Speedier web sites
Read a great article about High Performace Web Site secrets on Skrentablog, called 14 rules for fast web pages. The list provided there is highly accurate and up-to-date.
List for Fast Web Pages
- Make fewer HTTP requests - Reducing 304 requests with Cache-Control Headers
- Use a CDN
- Use a customized php.ini - Creating and using a custom PHP.ini
- Add an Expires header - Caching with mod_expires on Apache
- Gzip components
- Put CSS at the top in head
- Move Javascript to the bottom
- Avoid CSS expressions, keep it simple
- Make CSS and unobtrusive Javascript as external files not inline
- Reduce DNS lookups - Use Static IP address, use a subdomain with static IP address for static content.
- Minimize Javascript - Refactor the code, compress with dojo
- Avoid external redirects - Use internal redirection with mod_rewrite, The correct way to redirect with 301
- Turn off ETags - Prevent Caching with htaccess
- Make AJAX cacheable and small
Sources & References
The full talk has details on what all of these mean in practice.
- High Performance Web Sites: Rough Cuts Version
- Rules for High Performance Web Sites
- Image maps
- Speedy Sites with Image Sprites and CSS, CSS Sprites: Image Slicing's Kiss of Death
- inline images: The “data” URL scheme
- The JavaScript Minifier
- Dojo ShrinkSafe
- 10 Status Code Definitions, All 57 Status Codes
- IBM Page Detailer
- Firebug
- Performance Research, Part 1: What the 80/20 Rule Tells Us about Reducing HTTP Requests
- Performance Research, Part 2: Browser Cache Usage - Exposed!
- Performance Research, Part 3: When the Cookie Crumbles
- Performance Research, Part 4: Maximizing Parallel Downloads in the Carpool Lane
- High Performance Web Sites: The Importance of Front-End Performance
- High Performance Web Sites: Rule 1 - Make Fewer HTTP Requests
Recommendations
I recommend the article Speed Up Sites with htaccess caching to reduce the number of HTTP Requests. I also recommend hosting your static cacheable files on a separate subdomain, like s.askapache.net instead of www.askapache.com. You will also need to implement a version control system using mod_rewrite.
Comments