Building a scalable Litmus

[ 0 By

You may remember a few months back that we had to apologise for hitting some serious problems when trying to scale the service.

Ever since then I’ve been striving to find a way to help the Litmus website cope with the ever increasing traffic from our expanding customer base. Today I’m happy to say that after a week of rigourous testing and five weeks of in-production tweaks we have finally achieved our goals.

Litmus has come a long way, from the single physical server we hosted on just over a year ago, to two physical servers and now onto nine virtual servers complete with dual redundant load balancers and a dedicated database cluster.

We are very pleased with our new hosting company, Slicehost, who were recently bought out by Rackspace. This combination makes one of the best developer oriented virtual hosting companies backed by one the best known players in datacentre operations. We’re very happy to have them powering Litmus and hopefully you have already felt the difference.

The load balancers we have installed allow us to spread the incoming connections amongst a pool of self contained application servers, they are able to sense an application server in trouble and route around it until we identify and fix the problem. Spreading the service between these identical and replaceable application servers gives us unlimited possibilities to scale the service with demand and to do so without disrupting the operation of the site.

On top of all this, we have several other optimisations and speed boosts coming to the site very soon – including a scaling project Matt is currently working on for our back end testing systems which should massively increase our capacity in this area.