Notice : This article is outdated

Last Wednesday, Nov 03, Google's Webmaster Central Blog introduced the release of a module for Apache called mod_pagespeed - making your "websites run faster, automatically ... by about 2x in average". Have you watched the comparison video showing amazing facts and figures? Sounds very exciting how this module can improve your site's loading time.

We were curious about the tool and wanted to prove it on our own sites. We decided to make some experiments on three different sites of JoomlArt powered by Joomla, Drupal and Magento respectively, so let's see how it goes...

The Raw Stats

I - Testing site running on Joomla

Server: http://demo.t3.joomlart.com AT3 on rackspace cloud

  • Ubuntu 10.04 LTS (Lucid Lynx) 64 bit, 4Gb of RAM

Before:

After: Decrease load time 5.34s -> 4.93s

Results:

  • Decrease page load: from 5.34s to 4.93s
  • Get only one more point: from 67 to 68
  • System load very high:
    • 08:17:53 up 2 days, 22:03, 1 user, load average: 77.74, 43.37, 20.15
    • 08:27:43 up 2 days, 22:13, 1 user, load average: 99.64, 95.51, 59.32
  • Absolutely killed server. Have to reboot using Mosso Cpanel

II - Testing site running on Drupal

Server: http://drupal-themes.joomlart.com - Drupal demo server on EC2

  • Ubuntu 9.10 Karmic Koala 32 bit, 2Gb of RAM

Before:

After

Results:

  • Marginally decreased page load time
  • Pagespeed score improved by only 1 point

III - Testing site running Magento

Server: http://www.joomlart.com/demo/#jmtc - JMDemo on rackspace cloud

  • Debian Lenny 64 bit, 4Gb of RAM

Results:

  • Too high System load: > 78
  • Server seen to overloading
  • Missing CSS caused by broken layout

Is it disappointing or what? Let's take a closer look.

For Magento, we hardly can't say anything, it can be the problem that the mod_pagespeed is still in beta and does not well support our Debian server (which is also pretty old). However what we could measure on Joomla and Drupal sites didn't knock our socks off, far below the hyped expectation.

Let see the core: http://code.google.com/speed/page-speed/docs/filters.html

 add_head    combine_css    rewrite_css    rewrite_javascript    inline_css    inline_javascript    rewrite_images    insert_img_dimensions    extend_cache 
We can easily split the core & default optimization of mod_pagespeed into 3 groups: CSS & Javascript (combine_css, rewrite_css, inline_css, rewrite_javascript, inline_javascript), IMAGES (rewrite_images, insert_img_dimensions) and CACHE (extend_cache)

Let's see if we have done the job already with our JAT3 and JDT3.

CSS & Javascript

JAT3

  • CSS in blank template: http://demo.t3.joomlart.com/joomla15/index.php?jat3action=gzip&type=css&file=t3-assets%2Fcsse4849.css&v=1
  • CSS in JA Event template: http://templates.joomlart.com/ja_events/index.php?jat3action=gzip&type=css&file=t3-assets%2Fcss28d79.css&v=2
  • JA Blank Javascript : http://demo.t3.joomlart.com/joomla15/index.php?jat3action=gzip&type=js&file=t3-assets%2Fjscd9c5.js&v=1
  • JA Event Javascript: http://templates.joomlart.com/ja_events/index.php?jat3action=gzip&type=js&file=t3-assets%2Fjs6b5b1.js&v=1

JDT3

  • JDT3 bases on a quite good css/js & caches optimization which has already exist in Drupal 6 as default. Let's also look at the css & js files
  • CSS file of JDT3 Blank templates:
    http://demo.t3.joomlart.com/drupal/sites/default/files/css
  • CSS file of JD Event:
    http://drupal-themes.joomlart.com/jd_events/sites/default/files/css
  • JS file of JD Event:
    http://drupal-themes.joomlart.com/jd_events/sites/default/files/js/js
  • JDT3 Blank templates does not use any extra js file so we cant list it here

Note: All of above files will be deleted and re-created when the caches are refreshed so you may need to visit the orginal sites and view the source manually.

IMAGES...or any Media file

We recommend to move all static files, such as images and videos to a good CDN provider like Google Apps Engine or Amazon S3 & CloudFront.

Caches

Like any mature CMS, Joomla, Drupal and Magento have already a good cache system so extend_cache of google mod_pagespeed won't do much job on this aspect. 2 level of caches can be very tricky and risky in which you really need to know what is done at each level. Again, this can also be put on the CDN providers like IMAGES.

Summary

All in all we can state following fact: applying mod_pagespeed to our test sites, which are running with T3 Framework (JAT3 & JDT3), this tool was not able to show big time improvements, only very marginal. But this doesn't necessarily mean this module is not keeping it's promise - to speed up your site 2 times and fully automatically.

But one thing is save to say, if you do your housework well, clean all stuff related to CSS/JS and put static images to the cloud and deliver with CDN service then your site is pretty well optimized and even Google's cool module cannot really make a difference. If you are loading your websites with JAT3 framework powered themes or any system which does really great job with css/js/images/caches optimization; you don't really need to use mod_pagespeed. If you turn it on, you must configure the filters properly.

Does it work better for you?

We would be interested to hear from you guys whether you tested it yet and if you did what's your findings?

BLOG COMMENTS POWERED BY DISQUS