Planning for a website outage

A little boy looking ahead through a telescope
Look far ahead and plan for your website being down

Websites go down. It's sadly a fact of life and one which all website managers hope they don’t have to deal with. Rather than bury your head in the sand, plan for a website outage so that the risks and damage are minimised.

There are many reasons for a website to go down. It could be a lot of unexpected traffic, a CMS publication went wrong or a technical problem with a new version of your website. Regardless of the reasons, the consequences could be disastrous. Plan for a website outage as soon as you are able to and practice the disaster recovery procedures on a regular basis.

I normally split my planning into two areas; CMS configuration and worst-case scenarios.

CMS configuration

Here are my top 11 tips for configuring your CMS to prevent outages:

  1. Compress images to get every last kilobyte out of them while retaining visual quality
  2. Minimise your CSS and JavaScript so that you preserve their behaviour while considerably reducing their file size
  3. Put JavaScript at the end of the page where possible
  4. Add "expires" headers to content to prevent browsers from continually downloading the same files as a user browses your website
  5. Ensure that your web server delivers content in a compressed state, for example, mod_deflate for Apache. Clearly this should not be applied to files such as images, which should already compressed, so make sure you set up rules correctly
  6. Make fewer HTTP requests to fetch your website. Combine all CSS and JavaScript code into one file where possible. Include these files only on the pages where they are required
  7. Optimise your CMS to reduce the number of database calls you need to make for each page request. In most CMS this can be as simple as disabling modules you do not need. A change of one-tenth of a second in an algorithm that is run thousands of times add up
  8. Ensure that the CMS is caching data that is frequently accessed but be careful with dynamic data
  9. Load-balance your web servers
  10. Separate your read/write databases so that you can have a master/slave database setup, allowing your database infrastructure to be scalable
  11. If suitable, split your database vertically or horizontally (or potentially a hybrid of these if this model suits your database structure) over several servers

Worst-case scenarios

Plan early for the following so that you prepared for the unexpected:

Predict

While it’s impossible to predict every eventuality, there are some scenarios that you will be able to envisage and prepare for. Make a list of these and practice how you would react were they to happen. This should then be included in a contingency plan that will ensure downtime is minimised. Share the plan with your IT Help Desk, external support companies and your hosting company.

Invest in monitoring technology

If your site does go down, you want to make sure you are the first to know about it, so deploy an early warning system that will notify key individuals in the business as quickly as possible so action can be taken before too much damage is done.

Keep close to your suppliers

Whether your suppliers are external or internal, keep a close to them so that you know how they can help in the event of an outage. Understand how they would cope with the scenarios your have identified and learn from their experiences of dealing with similar outages.

Emergency landing page

Ensure that you have a temporary landing page designed so that you could replace this in the event of an outage. This page has to be as small as possible as it only needs to give important information about the outage and alternative contact information.

Internal communication plans

If your website goes down, it will impact other parts of your business too. For example, will your contact centre suddenly get more calls or emails?

Communicating what has happened to the rest of the business and what they should do about it is an important first step. Keep key stakeholders in the loop as things develop and set expectations.

External communication plans

Your external stakeholders, customers or clients should not be forgotten. They will want to know why your website is down; especially if it’s a website they depend on to access information or conduct business. Think about the other channels you could use, from email and phone to social media and have a contingency plan so that the channels are always accessible.

Back up your website

It might be an obvious one, but don’t forget to back up your website. If everything goes wrong and you lose your website, make sure you have another copy somewhere safe!

Hopefully this will never happen to your business but, just in case it does, these tips will hopefully save you from what could be an embarrassing and potentially damaging situation!

This page was last updated on Sunday, 13th March 2011.