While a number of the elements in this solution are the same, we’re relying on different characteristics of these components:
- The load balancer monitors the machines in its cluster and scales automatically to meet demand.
- The website itself is distributed across servers in an auto-scaling group.
- The database cluster is set up as an auto-scaling group.
- The shared file system auto-scales out of the box.
The magic that makes the solution a cognac and not just a rather fine brandy is the auto-scaling group. This, once configured, sets up monitoring on the servers (database or web) and fires up an additional server when the monitored metric goes over a certain threshold.
For example, if the Central Processing Unit (CPU) usage across both web servers is over 60% then the system will add an additional server into the mix, increasing the number of servers until the CPU usage drops back down below 60%, or the number of servers hits an upper limit. On the other hand, if the CPU usage drops below 30% then the system will kill off additional servers until the CPU usage goes back above 30%, or the number of servers hits a lower limit.
These upper and lower limits are defined in the configuration. If you set the lower limit to two then you automatically have a ‘highly available’ solution because there will always be at least two web servers. In fact, because of the auto-scaling group lower limit, if there are only two servers and one of them fails, which as Mr Vogels says will happen, then the system will recognise that there’s only one server and increase the number of servers back to two – in another data centre if necessary.
Highly available hosting vs. scalable hosting.
Scalable hosting is automatically highly available as the solution will spin up a replacement if part of the solution fails. But a highly available solution is not automatically scalable as the system is only designed to ‘keep running’ which requires intervention when things go wrong, rather than ‘self-repairing’.
How much does highly available scalable hosting cost?
I mentioned that with the advent of cloud computing, the cost of these solutions is now within reach for most businesses, however it’s still expensive. You’d be looking at more than five times the cost of standard hosting and there’s more maintenance involved, so this solution should only be considered if uptime is critical. For example, if you have an ecommerce site and downtime stops you from taking orders, you should definitely consider this. You might also consider this type of hosting if there’s a possibility of reputational damage if the site goes down.
HASH tags – how we’ve used highly available scalable hosting.
When we built an ecommerce site for CRM Students, we used highly available scalable hosting. We worked with CRM Students, a leading provider of student accommodation, to build them a new website in WordPress that was highly flexible and included ecommerce functionality. The site also needed to integrate with TCAS the third-party student accommodation booking system.
We also incorporated HASH into the corporate websites we created for Lucy Group and each of its 7 different business units. The company was established in Oxford over 200 years ago and has continued to expand and diversify into new markets and regions, now employing over 1,400 people and trading in over 60 countries.
Autodesk BIM 360
Another project we worked on that includes HASH is the award-winning BIM 360 website we built for leading software company Autodesk. The website brings together all content relating to BIM 360 software and transforms the user experience, helping every member of Autodesk’s audience quickly and easily find the content they need.