IEEE Access (Jan 2023)
Evaluate Solutions for Achieving High Availability or Near Zero Downtime for Cloud Native Enterprise Applications
Abstract
In today’s digital world, businesses heavily rely on systems for every aspect of their operations and product life cycle. Hence, it is important to have a strong ecosystem of applications to achieve operational efficiency and positive customer experience. High availability of mission and business critical applications is a necessity as any downtime or poor performance can have a negative impact on the revenue and operations of the organization. Applications transitioning to cloud are adopting modular design and distributed system architecture. As a result, the system complexity and the number of failure points have increased. One of the promises of cloud platforms is high availability by building redundancy in the application architecture. However, enterprises opting for cloud often struggle to define the right framework for high availability. In addition, even after redundancy is built at the application layer, building a similar redundant and resilient architecture at the database layer is challenging. For near zero downtime experience, applications should be able to perform automated application and database failover with minimum manual intervention. This could be a valuable feature for applications that are expected to be available 24/7. In this paper we will define a cloud native template architecture that enterprise applications can incorporate to be highly available and evaluate techniques to perform automatic database failover for a near zero downtime experience. We will then incorporate the database failover technique as part of the recommended application architecture to review the impact during planned maintenance activities and outages.
Keywords