Software Architecture for High Availability in the Cloud
This article from Brian Jimerson discusses how to engineer enterprise applications to ensure the highest level of availability and fault tolerance in the cloud. Recent events suggest that most cloud-based applications are not designed for traditional data center architectures, and when inevitable failures occur, these applications are unable to survive infrastructure outages. This article takes a look at some of the paradigm shifts in designing fault tolerance from machine-based architectures to cloud-based architectures, and how enterprise applications need to be engineered to ensure the highest level of availability and fault tolerance in the cloud. Given the most likely types of failures in cloud architectures, this article focuses on design considerations that can fundamentally affect fault tolerance and high availability in cloud computing.