This material discusses software architecture fundamentals and mechanisms for building highly resilient applications in the Amazon Web Services (AWS) environment. The object is to meet the requirements for recovering applications in different layers, including for mission-critical applications.
Resilient applications provide continuous service despite disruptions. Events such as natural disasters, hardware failures, and human errors can cause disruptions to service. Companies that don’t prepare their applications for these failures have a higher risk of downtime, instability, and loss of data in your solutions. This unavailability can lead to financial loss, legal implications, negative impacts on the brand, and customer dissatisfaction.1
Developing an application considering possible failures is one of the most important principles to make it resilient. According to the criticality of each application, expected RTO and RPO should be stipulated. It is important to discuss the Disaster Recovery Strategies in the AWS environment.