HPWS

Revving Filenames: don’t use querystring

It’s important to make resources (images, scripts, stylesheets, etc.) cacheable so your pages load faster when users come back. A recent study from Website Optimization shows that the top 1000 home pages average over 50 resources per page! Being able to skip 50 HTTP requests and just read those resources from the browser’s cache dramatically speeds up pages.

This is covered in my book (High Performance Web Sites) and YSlow by Rule 3: Add an Expires Header. It’s easy to make your resources cacheable – just add an Expires HTTP response header with a date in the future. You can do this in your Apache configuration like this:

<FilesMatch "\.(gif|jpg|js|css)$">
  ExpiresActive On
  ExpiresDefault "access plus 10 years"
</FilesMatch>

That part is easy. The hard part is revving your resource filenames when you make a change. If you make mylogo.gif cacheable for 10 years and then publish a modified version of this file to your servers, users with the old version in their cache won’t get the update. The solution is to rev the name, perhaps by including the file’s timestamp or version number in the URL. But which is better: mylogo.1.2.gif or mylogo.gif?v=1.2? To gain the benefit of caching by popular proxies, avoid revving with a querystring and instead rev the filename itself. Continue Reading »

HPWS
HTTP
Performance
YSlow
errata

Comments (6)

Permalink

OSCON: 34 hours in 37 minutes

I was in Portland for OSCON last week. There were many talks that attracted my attention - so many that I couldn’t get to them all. If you missed some talks, or didn’t make it to OSCON, check out this great effort capturing Oscon in 37 minutes. Gregg Pollack asked 45 speakers to summarize their talk in 30 seconds. Most people took longer (37 * 60 / 45 = 49.3 seconds), but still, to get a taste of 45 sessions in a 37 minute video is pretty awesome. If you had attended each session it would’ve taken over 34 hours! You can jump straight to the segment for any speaker (here’s mine), and links to each speaker’s slides are displayed.

Conferences
HPWS
Performance
YSlow

Comments (0)

Permalink

High Performance Web Sites, Part 2

In my first book, High Performance Web Sites, I presented 14 rules for making web pages faster. I’ve got some good news and some bad news. Bad news first: there are more than 14 things you have to do to speed up your pages. The good news is I’ve started another book that describes more best practices for web performance. The working title is High Performance Web Sites, Part 2. Here’s the set of rules I have so far:

  1. Split the initial payload
  2. Load scripts without blocking
  3. Don’t scatter scripts
  4. Split dominant content domains
  5. Make static content cookie-free
  6. Reduce cookie weight
  7. Minify CSS
  8. Optimize images
  9. Use iframes sparingly
  10. To www or not to www

Continue Reading »

HPWS
Performance

Comments (10)

Permalink

O’Reilly Webcast

This Thursday, April 24, at 10am PDT I’m doing a webcast entitled “Even Faster Web Sites”. This is a new type of event for O’Reilly and I’m excited to try it out. I’ll do 30 minutes of talking with online slides and demos, followed by questions from listeners. There is a limit to the number of people who can attend, so please register in advance.

HPWS
Performance

Comments (9)

Permalink