10 comments

[ 5.1 ms ] story [ 32.5 ms ] thread
These tips are definitely useful for S3-based apps, but are also very informative in general. Thanks a lot for the article.
You also get a big performance boost when you use the cache-control headers properly. Because you'll be saving the browser having to connect to the server to check if the file changed, and if you have many js, css, and image file, then you'd be saving a lot of round-trips.
Thanks for posting this, very useful.

One of our services relies heavily on S3 for image storage.

AFAIK, one of the browsers (probably IE), ignores query parameters on css and js files and will not refresh foo.css?v=2 if it has foo.css?v=1 in its cache.
I've never seen this behavior anywhere.
I am told by someone with a high volume, consumer site that there are proxies in use that strip the query parameter from URLs that they guess are images. They are rare, but they caused him to put the serial number in the file name. (This was several years ago, I don't know if these proxies still exist.)
I thought the point of a web startup is to figure out ways to increase your hosting bills... :)