AWS Certified Solutions Architect – Associate (SAA-C02) — Question 714
A company is running a critical business application on an Amazon EC2 instance. The EC2 instance is hosting an Apache web server and a MySQL database server. The application serves static content and dynamic content to end users. The application is experiencing severe availability issues because of heavy user demand. The company needs a solution that resolves the availability issues with the least operational effort and the least change to the application.
What should a solutions architect do to meet these requirements?
Answer options
- A. Deploy the application and the web server on AWS Fargate. Use a Network Load Balancer to route traffic. Migrate the database to Amazon DynamoDB.
- B. Create an Amazon Machine Image (AMI) from the current EC2 instance. Create an Auto Scaling group to provide more capacity as needed. Use a Network Load Balancer to route traffic.
- C. Host static content on Amazon S3. Deploy the application and the web server on AWS Fargate. Use an Application Load Balancer to route traffic. Migrate the database to Amazon Aurora Serverless.
- D. Host static content on Amazon S3. Deploy the application on EC2 instances that are configured in an Auto Scaling group. Use an Application Load Balancer to route traffic. Migrate the database to Amazon DynamoDB.
Correct answer: C
Explanation
Migrating the MySQL database to Amazon Aurora Serverless allows the relational database to scale automatically with minimal application changes, whereas migrating to Amazon DynamoDB (a NoSQL database) would require a complete rewrite of the database layer. Offloading static content to Amazon S3 and using AWS Fargate with an Application Load Balancer reduces operational effort by eliminating EC2 server management while effectively handling heavy web traffic. Option B is incorrect because running a local MySQL database inside an Auto Scaling group would lead to data synchronization and consistency issues across multiple instances.