Microsoft and Google have revealed that the longer your site takes to load, particularly beyond one second, the significantly more likely your overall traffic including engagement and retention will suffer as viewers like you ain’t got time for slow responses to your stimuli. One second should be the target, the magic number. I’ll settle for two.

toodamnslowOur site is grossly overweight. I’d wager over a hundred of the requests your browser makes to load a single page here don’t contribute anything at all to make you more likely to come back, and therefore have the opposite effect. By my watch and Google’s our pages take ten seconds to load which of course is way, way off the mark. Based on their data it’s remarkable we manage to pull in the traffic we currently get. I want our readers to have a better site experience, we want as few bytes and requests and DNS lookups involved per pageview. The situation is rather bad, it’s obvious that we need to correct it, we have got work to do, so let’s get started.

I’d like your help please cooking up a to do list. Here’s what I’ve got so far.

  • Disable hostnamelookups, experiment with keepalive, test various maxes in Apache and php, deflate/gzip, disable all extraneous Apache modules (along with WordPress plugins). Don’t ask me why hostnamelookups were ever enabled to begin with…
  • Minimize DNS lookups on page views, serve as much as possible on one host including even our ga.js (use cron to grab an update from Google daily). See which loads faster, hosting jQuery locally or serving it from Google at the expense of another DNS lookup.
  • Pack as much minified CSS and JS together as possible. Determine how much they slow down the site and decide how badly we truly need Livefyre and the slideshow. And the various widgets.
  • Images: start by spot checking for oversized images that are scaled down needlessly, then police for proper image format selection. Consider WebP for supporting browsers (either with HTTP_ACCEPT or an image file name extension rewrite based on reported user agents).
  • Experiment with various Apache, PHP and MySQL settings (keepalive, various limits, disable all extraneous modules), compare site speed with and without deflate/gzip enabled.
  • Experiment with different caching methods, EG memcached versus file caching. Issue correct browser caching instructions.
  • Try mod_pagespeed, or Google’s Pagespeed Service, or one and then the other.
  • Try serving images on another host or sub.
  • Try FastCGI.
  • Trim server load by only allowing Chrome users to access the site.
  • Make sure all local URLs are relative, grab an SSL cert, enable SSL, try out mod_spdy.

Am I on the right track? Thanks.
Doug Simmons

12 COMMENTS

  1. Though the page loaded quick enough, the progress bar still is in progress.
    Just finished after I typed the first line.
    What took soo long?

      • Yes to Java
        But something else is wrong with this site.
        What did you guys change, besides the comments?

      • I kinda wish websites came with a list of “ingredients”
        I Hate this new comment system!

      • JRDemaskusThough there’s a heavy dose of javascript, a lot of which is the commenting system we’re now using, unless I’m missing something there is no java on our site. “Quick enough” — I disagree, I think this page needs to load on an averaged browser (uncached) inside three seconds, I don’t think we have enough justifiably critical components bloating up the site to warrant the additional time the page takes to load beyond two seconds. We can do better, and if we do better, the site and audience will do better too. Plenty of blogs out there do quite fine that load inside two seconds. We’re scrambling for ways to improve our audience and engagement, cranking up the speed dial and cutting the bloat both taking up time to load pages and taking up visible space, clutter, on the site, might very well be one of those ways. 
        JRDemaskus: Regarding the commenting system, while I don’t like it either, out of curiosity, why don’t you like it?

      • It took minutes for the progress bar to complete. When I disabled Java, the first reply to my first comment disappeared. Re-enable/ dis-enable again and all the comments are gone.
        I typed a full paragraph the first time, touched the page, and it all disappeared before I hit post.
        If I use the cursor arrows, it highlights whatever I move accross (like copy select) and then deletes it.
        If I touch the page while it is loading, comments disappear.
        In all, it has been a buggy week visiting this site.
        Though my E-mail has changed, and sometimes I am just “JR” I have been visiting this site as “JRDemaskus” since early WinMo days, and this is the worst it has been.
        Sorry

      • I had to refresh the page to get the comment to post, the wheel just sat there spinning.
        I just experimented with touching the page again, but nothing disappeared.
        It seems just to be the comment system itself, and not the whole website.
        Your home page loaded in a few moments. The actual acticles take minutes for the progress bar to complete.

      • I typed that whole last comment before the bar was complete.
        Hit post, and it went up instantly.
        And again with this one.

      • Sorry to take up so much time and space here.
        If I type a comment, and then touch the page before hitting post, my comment disappears.

  2. Much better! Faster! No bugs yet.
    Thank you.
    I have Great appreciation for those who listen.
    Peace

Comments are closed.