Courseiva

SOA-C02 Reliability and Business Continuity Practice Question

A company runs a stateful web application on a single EC2 instance. To improve reliability, the company wants to implement a highly available architecture. What should the SysOps administrator do?

⚠ Common exam trap

Watch out — candidates often assume that simply adding a second instance or using DNS failover (Route 53) is sufficient for high availability, overlooking the critical requirement to externalize session state for stateful applications.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Refactor the application to store session state externally (e.g., ElastiCache), then deploy it across multiple AZs with an Application Load Balancer.

It addresses the core challenge of making a stateful web application highly available. By storing session state externally in ElastiCache, the application becomes stateless from a networking perspective, allowing any EC2 instance to handle any request. Deploying these instances across multiple Availability Zones (AZs) behind an Application Load Balancer (ALB) provides fault tolerance and automatic traffic distribution, eliminating the single point of failure.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✓

    Refactor the application to store session state externally (e.g., ElastiCache), then deploy it across multiple AZs with an Application Load Balancer.

    Why this is correct

    Externalizing session state to a service like ElastiCache decouples user sessions from individual EC2 instances, making the web tier stateless. With an Application Load Balancer distributing traffic across multiple instances in different Availability Zones, the application survives instance or even AZ failures without manual intervention. The ALB's health checks automatically route around unhealthy targets, and the stateless design allows you to scale out or replace instances without losing any in-flight user session data.

  • ✗

    Migrate the application to a larger instance type.

    Why it's wrong here

    Scaling vertically by moving to a larger instance type increases compute and memory capacity, but it does nothing to eliminate the single point of failure at the instance level. If that one instance crashes, suffers hardware failure, or becomes unavailable due to a network partition, the application goes down regardless of its size. Moreover, instance sizes have practical limits, and this approach cannot provide the high availability and automatic failover that a multi-instance architecture offers.

  • ✗

    Create a standby EC2 instance and use an Elastic IP to fail over manually.

    Why it's wrong here

    This approach relies on an administrator detecting the failure and manually reassociating the Elastic IP from the primary to the standby instance. Manual failover introduces significant downtime, often minutes, because the administrator must notice the outage, connect to the console or API, and then remap the EIP, all while the application is unavailable. It also risks human error, and the standby instance is idle, so it does not share traffic or provide redundancy unless failover is triggered; it is a slower, reactive process rather than an automatic, highly available design.

  • ✗

    Use Route 53 health checks to route traffic to a secondary instance if the primary fails.

    Why it's wrong here

    Route 53 health checks can automatically reroute traffic to a secondary instance if the primary fails, but this only works if the application is stateless or sessions are replicated. Because the application is stateful, any session data stored locally on the primary is lost when traffic switches to the secondary, causing users to be logged out or lose progress. Additionally, the secondary instance must already be running and provisioned; Route 53 does not start new instances, and DNS TTLs can delay failover, making this an incomplete solution for high availability.

About these practice questions

Courseiva writes every SOA-C02 question from scratch — 1,169 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more way this is tested on SOA-C02

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A company is running a stateful web application on a single EC2 instance in a public subnet. The instance stores user sessions locally. The company wants to improve availability without rewriting the application. Which design should they use?

hard
  • A.Create a second EC2 instance in a different AZ and use Route 53 with health checks.
  • B.Use an Auto Scaling group across multiple AZs but keep sessions on instance.
  • ✓ C.Deploy an Application Load Balancer across multiple AZs, move session storage to ElastiCache, and use an Auto Scaling group.
  • D.Use an Application Load Balancer with sticky sessions and an Auto Scaling group in a single AZ.

Why C: It addresses the core issue of stateful sessions without rewriting the application. By moving session storage to ElastiCache (a centralized, external data store), the application becomes stateless from the instance's perspective, allowing an Auto Scaling group across multiple Availability Zones (AZs) and an Application Load Balancer (ALB) to distribute traffic seamlessly. This design improves availability by enabling horizontal scaling and fault tolerance, as any instance can handle any request since sessions are stored externally.

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This SOA-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SOA-C02 exam.