Courseiva

SOA-C02 Cost and Performance Optimization Practice Question

A company hosts a multi-tier web application on AWS. The application consists of an Application Load Balancer (ALB), a fleet of Amazon EC2 instances running in an Auto Scaling group, and an Amazon RDS for MySQL database. The application is accessed by users worldwide. Recently, the company has expanded to new geographic regions, and users in those regions are experiencing high latency. The SysOps administrator is tasked with optimizing performance for global users while keeping costs low. The administrator has already implemented Amazon CloudFront as a CDN for static content. However, dynamic content that requires database queries is still slow. The application's Auto Scaling group is configured with a dynamic scaling policy based on average CPU utilization, but the scaling is not responsive enough during traffic spikes, causing performance degradation. Additionally, the database is a single db.r5.large instance in the us-east-1 region, and all traffic must hit that database, causing high latency for remote users. The administrator needs to propose a comprehensive solution that addresses both compute and database performance issues globally, while considering cost. Which solution is MOST effective?

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

✓

Use Amazon Aurora Global Database to create read replicas in other regions, and configure the Auto Scaling group with a target tracking scaling policy based on request count per target.

Amazon Aurora Global Database provides low-latency read replicas in other regions for dynamic content, reducing latency for global users. Additionally, a target tracking scaling policy based on request count per target is more responsive to traffic spikes than CPU-based scaling, as it directly reflects application load. Option A is wrong because using step scaling based on memory utilization does not address global latency and memory may not be the bottleneck. Option C is wrong because ElastiCache caching reduces database load but does not reduce latency for users far from the primary database; predictive scaling may not handle sudden spikes well. Option D is wrong because using larger instances and Multi-AZ does not reduce global latency and increases cost.

Answer analysis

Option-by-option breakdown

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

  • ✗

    Increase the minimum and maximum size of the Auto Scaling group and use a step scaling policy based on memory utilization.

    Why it's wrong here

    Increasing the Auto Scaling group's minimum and maximum size, combined with a step scaling policy based on memory utilization, only affects compute capacity in the current region. It does nothing to reduce the network round-trip time between global users and a single-region database, so the latency that users experience on database reads remains unchanged. Moreover, memory utilization is a poor proxy for request latency; a memory-based step policy may trigger late or inappropriate scaling, making it an ineffective solution for a geographically distributed user base.

  • ✓

    Use Amazon Aurora Global Database to create read replicas in other regions, and configure the Auto Scaling group with a target tracking scaling policy based on request count per target.

    Why this is correct

    Amazon Aurora Global Database replicates data across AWS Regions with a typical replication lag of under one second, allowing application reads to be served from regional read replicas. This dramatically reduces cross-region network latency for global users, making database reads fast regardless of user location. Configuring the Auto Scaling group with a target tracking policy based on Application Load Balancer request count per target directly aligns compute capacity with incoming traffic patterns, allowing the web tier to scale quickly during demand spikes without waiting for memory or CPU alarms to fire.

  • ✗

    Implement Amazon ElastiCache for Redis to cache database queries, and use predictive scaling for the Auto Scaling group.

    Why it's wrong here

    Implementing ElastiCache for Redis caches frequent database queries, which can reduce repeated DB load, but cache misses still require a round trip to the primary database in the original region. This does not consistently lower latency for global users, especially if the cache is also in the same single region as the database. Predictive scaling relies on historical traffic patterns and cannot handle sudden or unpredictable global traffic spikes effectively; it will not compensate for the database latency that remains on cache misses.

  • ✗

    Use larger EC2 instances (e.g., c5.2xlarge) for the application tier and provision a Multi-AZ RDS instance for better performance.

    Why it's wrong here

    Switching to larger EC2 instances and a Multi-AZ RDS deployment improves raw compute throughput and database high availability, but it does not solve the fundamental geographic latency problem. Requests from users in distant regions still travel over the public internet to reach the application and database in the original region, so round-trip time remains high. Multi-AZ provides a synchronous standby in a different Availability Zone for failover, not a read replica that can serve low-latency reads to global users; this option increases cost without delivering the required latency improvement.

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

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.