The ideal hosting platform should not present its users with surprises. They should be able to predict exactly how it will behave under all conditions. If they can’t, then there’s no hope that they will be able to properly plan for their site or application’s future performance.
Of course, the worst possible surprise a site owner or IT department can be presented with is a complete failure of their cloud platform. Downtime over the long-term is frequently unavoidable: on an indefinite timescale, something will go wrong on a large enough scale to take a site down, but the job of cloud providers is to make sure that downtime is as rare as an asteroid hitting the data center. Frequent downtime or intermittent failures are not acceptable.
If we acknowledge that something will go wrong at some point — hardware is not infallible and accidents will happen —, it follows that we should build infrastructure and services that incorporate that reality into the fabric of their design. Instead of designing just for performance or power, high availability cloud platforms are designed with the expectation that disaster will strike and that, nevertheless, the platform should remain stable.
What Is High Availability?
The basic concepts behind high availability hosting are not difficult to understand. It relies on proactive monitoring, redundancy to remove single points of failure, and fast infrastructure swapping.
Imagine a scenario in which developers push out a change to your site. In spite of all the testing, there’s a regression that causes the site to perform poorly under real-world load. The server slows down until the point at which it gives up the ghost and stops responding to all outside requests. Without a high availability infrastructure, at this point you’d be tearing your hair out while trying to spin up an alternative server with the old image and swap them out.
With a high availability platform, things are a bit different. Your production server will still fail when the buggy software is implemented, but within minutes, proactive monitoring systems realize that it is no longer responding to requests. The bogged-down server is immediately swapped out for a redundant alternative that has been sitting waiting for just such an eventuality. The speed at which new server instances can be spun up on cloud platforms makes high-availability infrastructure much easier to implement and much more resilient to problems.
Without a high availability platform, your site is just waiting for the next catastrophe to take it down, but a high availability cloud platform can absorb most potential disasters without users ever being aware that anything happened, which is exactly as it should be.
(cloud computing / shutterstock)