Add new comment
Battle plan for Drupal 7: performance
My battle plan for Drupal 7 is simple: get as many performance improvements or performance-improvement-enablers from my Drupal page loading performance article into Drupal 7. From high to lower priority:
- #214934: file_url() and hook_file_server() – yep, patch for Drupal 5 already available and in production use here on this site as well as DrupalBin) – for rule 2, rule 3 and rule 9.
- Automatic CSS sprite generator, for rule 1. I still have to play with this to figure out if it’s a realistic goal.
- GZIP CSS and JS files, for rule 4.
- Put JS files at the bottom by default. However, when at least one JS file
is added to the header, both
jquery.jsanddrupal.jsshould be added to the header as well. JS files that alter the appearance of the site heavily (such as carousels) should always be added to the header, and guidelines for this should be written, and should be very clear. This is for rule 6.
If I manage to get all these improvements in, Drupal 7 will without a doubt be the fastest loading out-of-the-box Drupal release ever. And if you can and are willing to pay for a CDN, it can even be faster.
The average site uses the Garland theme, Google Analytics, has at least some images on its frontpage, and does not have access to a CDN.
I simulated this on my frontpage, and my YSlow score was 85. With a CSS sprite generator, that’d be a better score of course. So that’s my goal for a default Drupal 7 installation: a YSlow score of 85.