When considering the various issues which can cause a website or application to become unresponsive one of the big concerns is outages. This can be in the form of server hardware failure, software bugs, power outages, internet routing issues and natural disasters. When trying to figure out the best way to mitigate the damages incurred by these events deploying a highly available cloud architecture is a huge part.
So what is a highly available cloud architecture? Well it consists of many parts which will be custom fitted to the project depending on project size, geographic targeting, expected traffic and traffic spikes. A startup company with low traffic and a small budget may only require two availability zones with a single server instance in each zone while a large project with global reach may require multiple availability zones spread out over multiple regions with many servers in each zone.
What is an availability zone? In Amazon’s AWS platform availability zones are individual data centers scattered around the world. Within those data centers, are the servers, storage, and network that make up the AWS infrastructure and provide Cloud services. Every AWS region has more than one availability zone, and all of the zones within a given region are connected to each other.
What’s the benefit of using multiple availability zones? Well, there are several benefits, first being lower latency. When it comes to latency, it makes a lot more sense to have the servers that provide a given application located relatively close to the end users that will access that application. Latency is a big issue in the application world, and Amazon address is this by distributing its servers and storage, placing those resources closer to their customers’ end users. Additionally, customers can deploy their applications and instances across availability zones, and design their environment so that if one availability zone fails, the instances in the other availability zone will become active, and continue the work of the servers in the failed availability zone, until such time as service can be restored.
This provides the benefit of allowing AWS customers who have infrastructure spread across more than one zone are better able to deal with outages in application downtime. With this kind of design, AWS customers are able to mitigate many of the outages that cloud applications are often subject to, and is another benefit of using the AWS platform.
See the AWS Architecture Center for more information