Decoupling Monolithic App with Auto Scaling and RDS Read Replicas

SAA-C03 By islever Editorial Last updated

Short answer

A Resize the EC2 instance, configure an Auto Scaling group, and add an RDS read replica for read requests.

Question

A company recently migrated a monolithic application to an Amazon EC2 instance and Amazon RDS. The application has tightly coupled modules. The existing design of the application gives the application the ability to run on only a single EC2 instance. The company has noticed high CPU utilization on the EC2 instance during peak usage times. The high CPU utilization corresponds to degraded performance on Amazon RDS for read requests. The company wants to reduce the high CPU utilization and improve read request performance. Which solution will meet these requirements?
  1. Resize the EC2 instance to an EC2 instance type that has more CPU capacity. Configure an Auto Scaling group with a minimum and maximum size of 1. Configure an RDS read replica for read requests. Correct Answer
  2. Resize the EC2 instance to an EC2 instance type that has more CPU capacity. Configure an Auto Scaling group with a minimum and maximum size of 1. Add an RDS read replica and redirect all read/write traffic to the replica.
  3. Configure an Auto Scaling group with a minimum size of 1 and maximum size of 2. Resize the RDS DB instance to an instance type that has more CPU capacity.
  4. Resize the EC2 instance to an EC2 instance type that has more CPU capacity. Configure an Auto Scaling group with a minimum and maximum size of 1. Resize the RDS DB instance to an instance type that has more CPU capacity.

Key Takeaways

The core trap is confusing read-only replicas with write-capable databases; correct scaling requires separating read traffic from the primary instance while enabling horizontal compute scaling.

This question addresses how to resolve high CPU utilization and read performance bottlenecks in a monolithic AWS application using Auto Scaling and RDS Read Replicas.

Common mistake: Option B is a common wrong answer because it suggests redirecting all traffic (including writes) to the replica, which violates the read-only nature of RDS replicas.

Expert Analysis

Why the Answer Is Correct

Option A correctly implements two distinct architectural improvements: horizontal scaling for the compute layer and offloading read traffic for the database. By configuring an Auto Scaling group (even with min/max=1 initially, it establishes the pattern for elasticity), the EC2 capacity can grow during peak loads, directly addressing high CPU utilization. Simultaneously, adding an RDS Read Replica allows the application to direct read requests away from the primary instance, resolving the degraded read performance without impacting write operations.

Why the Other Options Are Wrong

Option B fails because RDS Read Replicas are strictly for read-only operations; redirecting write traffic to them will cause errors or data inconsistency. Option C only adds a second EC2 instance but does not address the RDS read bottleneck, leaving the database as a single point of failure for reads. Option D merely increases instance sizes (vertical scaling) which is cost-inefficient and does not provide the fault tolerance or elastic scalability inherent in distributed architectures like Auto Scaling groups.

Community Comment Notes

Community feedback strongly supports Option A. One user noted that Option B is incorrect because 'RDS read replicas are designed to handle read operations only'. Another commenter highlighted that Option A effectively addresses both the CPU and read performance issues simultaneously. While some users questioned the utility of an Auto Scaling group with min=max=1, this is often used in exam scenarios to indicate the capability or configuration intent rather than immediate active scaling.

Exam Strategy

Always distinguish between vertical scaling (changing instance size) and horizontal scaling (adding instances via Auto Scaling). When asked to improve read performance specifically, look for 'Read Replica' solutions, and ensure you never send write traffic to a read-only replica.

Frequently Asked Questions

Why is an Auto Scaling group with min=max=1 valid?

It demonstrates the architectural pattern. Even if currently set to one instance, it configures the system to scale out if needed, unlike a static instance.

Can I send write traffic to an RDS Read Replica?

No. RDS Read Replicas are strictly read-only. Any write operations must go to the primary DB instance to maintain data integrity.

More SAA-C03 FAQ →

Community Votes

A
100%

100% of anonymous learners picked answer A. Votes are pick records left by other test-takers — they are not the verified answer.

Discussion 4 contributions

Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.

From public community threads 4

  1. ltetti 👍 4 Answered A
    Option B incorrectly suggests redirecting all read/write traffic to the replica. RDS read replicas are designed to handle read operations only, not write operations. Writes must still be handled by the primary DB instance
  2. dhewa 👍 2 Answered A
    This approach addresses both the high CPU utilization on the EC2 instance and the degraded read performance on the RDS instance effectively.
  3. GOTJ 👍 2 Answered A
    Option "A", but... How does an auto scaling group with min = max = 1 instances contribute to the solution?
  4. Abbas_Abi_AWS 👍 2 Answered A
    A is correct

Reader comments & corrections

No reader corrections yet — spotted an error or have a note? Share it below.

Log in to comment, report an error, or add a note about this question.

Submitted for moderation before publishing. Keep it helpful and respectful.

Practice All SAA-C03 Questions

Access 120 questions with complete answers and detailed explanations.

View Full SAA-C03 Practice Test →

← Back to SAA-C03 Study Guide