
Ultimate access to all questions.
A company has migrated an application to the AWS Cloud, which operates on two Amazon EC2 instances behind an Application Load Balancer (ALB). The application utilizes a MySQL database hosted on another EC2 instance, with a significant read-heavy workload. Static content is frequently updated and must be synchronized across Amazon Elastic Block Store (EBS) volumes attached to each EC2 instance. The application experiences varying loads throughout the day, and during peak times, it struggles to manage all incoming requests. Analysis indicates that the database is unable to cope with the increased read demand during these peak periods. What solution would enhance the application's reliability?
A
Transition the application to AWS Lambda functions, configured as targets for the ALB. Establish a single EBS volume for static content and have the Lambda functions access it. Upgrade the database to an Amazon RDS for MySQL Multi-AZ DB cluster.
B
Shift the application to AWS Step Functions state machines, designated as targets for the ALB. Implement an Amazon Elastic File System (EFS) for static content and enable the state machines to utilize the EFS. Convert the database to Amazon Aurora MySQL Serverless v2 with a reader DB instance.
C
Containerize the application and move it to an Amazon ECS cluster with AWS Fargate launch type. Create a single EBS volume for static content and mount it on the ECS cluster. Enable AWS Application Auto Scaling for the ECS cluster and set it as a target for the ALB. Update the database to an Amazon RDS for MySQL Multi-AZ DB cluster.
D
Containerize the application and deploy it to an Amazon ECS cluster using AWS Fargate. Set up an Amazon EFS for static content and attach it to each container. Activate AWS Application Auto Scaling for the ECS cluster and designate it as a target for the ALB. Transition the database to Amazon Aurora MySQL Serverless v2 with a reader DB instance.