High-Availability Applications: Design Approach and Objectives

Design Approach for High-Availability Applications

Question

A developer has created an application based on customer requirements.

The customer needs to run the application with the minimum downtime.

Which design approach regarding high-availability applications, Recovery Time Objective, and Recovery Point Objective must be taken?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

A.

High-availability is a design approach that ensures an application or system is always available and functional even in the event of hardware or software failure, network outages, or other issues. To achieve high-availability, a system must have a way of recovering from failures quickly and without significant downtime. Recovery Time Objective (RTO) and Recovery Point Objective (RPO) are two metrics used to measure a system's ability to recover from a failure.

RTO refers to the maximum amount of time an application can be down before it affects the business. It is the amount of time it takes for an application to be restored to a fully operational state after a failure. A lower RTO means that the system can recover more quickly from a failure, and the application can resume normal operations faster.

RPO refers to the amount of data that can be lost in the event of a failure. It is the maximum amount of data that can be lost before it affects the business. A lower RPO means that the system can recover with less data loss, and the application can resume normal operations with minimal loss of data.

Active/passive and active/active are two common high-availability design approaches.

Active/passive involves having two identical systems running in parallel, with one system actively processing requests, and the other system on standby, ready to take over in the event of a failure. In this approach, the standby system does not process requests until the active system fails. When a failure occurs, the standby system takes over, and the application resumes normal operations.

Active/active involves having two or more systems running in parallel, with each system actively processing requests. In this approach, each system is capable of handling the full load of requests. If one system fails, the remaining systems continue to handle requests.

Option A is the correct answer. Active/passive results in lower RTO and RPO because the standby system is always ready to take over in the event of a failure, reducing the time it takes to restore the application to normal operations. However, to achieve a low RPO, data synchronization between the two data centers must be timely to allow seamless request flow. This means that the data must be replicated to the standby system in real-time or near-real-time to minimize the amount of data that can be lost in the event of a failure.

Option B is incorrect because data synchronization between the two data centers must be timely to allow seamless request flow and achieve a low RPO.

Option C is incorrect because active/active does not result in lower RTO and RPO compared to active/passive. Active/active may result in higher RPO because data must be synchronized across multiple systems, increasing the risk of data loss in the event of a failure.

Option D is incorrect because active/active does not require data synchronization to be timely to allow seamless request flow. However, timely data synchronization is still important to achieve a low RPO.