Google Updates Mod_Pagespeed With Smarter Caching, Progressive JPEGs

Google wants the web to be as fast as possible and it’s been working on a number of initiatives like SPDY, PageSpeed Tools, its hosted libraries and, of course, its Chrome browser. One tool that doesn’t get quite as much press as projects like Chrome and SPDY is mod_pagespeed for the open-source Apache web server.

Mod_pagespeed automatically implements a number of performance-optimization techniques that can help improve the loading times of the sites that implement it. Google has now launched version 1.2 of mod_pagespeed. This new version focuses on four features: improved caching for JavaScript libraries like jQuery and jQuery UI; pre-resolving DNS requests; the ability to proxy and optimize resources from trusted domains; and core support for transcoding JPEG images to progressive.

As Google’s Joshua Marantz, Jan-Willem Maessen and Bharath Bhushan note in the announcement, “numerous web sites use common JavaScript libraries such as jQuery and jQuery UI. But when one library is stored on many sites, browsers end up re-downloading that library for each new site – a waste of time and bandwidth.” To ensure that users don’t have to re-download these libraries every time, mod_pagespeeds smarter caching system for JavaScript libraries now looks for standard libraries and modifies the site (including third-party code on it) to link to Google’s own copy of them.

Another caching-related optimization in mod_pagespeed 1.2 is support DNS prefetching. DNS resolution time, the mod_pagespeed team says, “varies from <1ms for locally cached results, to hundreds of milliseconds due to the cascading nature of DNS.” Pre-resolving DNS requests won’t shave seconds of your site’s loading times, but it could easily save you half a second – and the point of mod_pagespeed is to make many incremental changes that add up to a significantly faster load time.

Here is what this looks like in action:

Before:

before

After:

after

Also new in version 1.2 is the ability to transcode JPEG images to the progressive JPEG format. This feature was previously available in mod_pagespeed, but users had to manually select it. It’s now a ‘core’ filter.

The team also notes that mod_pagespeed can now proxy and optimize resources from trusted domains. This, they say, “enables you to optimize resources even from servers that don’t run mod_pagespeed” and will also provide performance benefits for sits that run SPDY.