have set up htaccess to cache everything, used minify to combine scripts and css files, using gzip on my server’s files - but it’s still dog slow and i am not sure how to make it faster.
Lol - dog slow, I was expecting something > 20 seconds, not 3.5
Can the js be loaded at the bottom of the page instead of the head without breaking functionality (would load in parallel with images)? or even asynchronously (though that’s usually more work).
From what I can tell, al of your images for the slide show load right after each other as part of the main page load. You could load just the initial picture first and then after onLoad get the others to load and initiate the slideshow code.
It looks like you cold benefit a little bit by spriting the icons as well.
Beyond that you should look into CDN options. There are some free and low-cost options available and your images will load a fair bit quicker being served from a CDN (the green request time for each item will be reduced quite a bit).
btw, out of those suggestions, moving the javascript would be the biggest bang and would improve the start render time which goes directly to the user experience.
Sorry for the bad timing. Something got screwed up on the WebPagetest server and it wasn’t accepting the posts of the result files (anything larger than a few K was being dropped). I bounced the server and everything should be working again.
Try running several tests just to make sure you’re not seeing an artifact of the CDN edges getting populated. Usually the first time a CDN node sees a given request it has to go back and fetch the actual asset so it’s quite a bit slower.
That said, if you’re not tied to S3 storage for your site you have quite a few options. I’m a pretty big fan of MaxCDN (and they’re crazy-cheap) but if you need a broader footprint you’ll probably have to look into something like Akamai (I think there is a low-volume reseller of Akamai). There’s also Cloudflare which has a free entry-level offering if you wanted to try them out.
Nice. The images look like the long pole now so spriting as many of the icons ans possible should be a big help. Looks like your css (and as a result, some of your images) are coming from your origin server instead of the CDN. Might be worth moving that to the CDN as well.
Yep, looks like the caching of the images is broken because of a Vary header on the images:
Vary: Accept-Encoding
That breaks caching for images with IE I’ll see if it’s a more general problem with MaxMind, if so I expect it will be a very urgent fix on their side.
[hr]
for what it’s worth,
comparing images on your site, served by maxcdn and from my site i see the response headers of ‘my’ images have two extra lines:
Response Headers:
Vary: Accept-Encoding
X-Cache: HIT
Can you do it only for image/* mime types? Otherwise there’s a (small) risk of problems for text content (though I guess since it’s all going through MaxCDN, they would be handling that part).