AWS Certified Solutions Architect – Associate (SAA-C03) — Question 627

A company recently migrated its web application to the AWS Cloud. The company uses an Amazon EC2 instance to run multiple processes to host the application. The processes include an Apache web server that serves static content. The Apache web server makes requests to a PHP application that uses a local Redis server for user sessions.

The company wants to redesign the architecture to be highly available and to use AWS managed solutions.

Which solution will meet these requirements?

Answer options

Correct answer: D

Explanation

Option D is the correct answer because it decouples the application layers into highly available, fully managed services: static content is stored in Amazon S3 and accelerated by Amazon CloudFront, the PHP backend runs on AWS Fargate (ECS) behind an Application Load Balancer, and session state is externalized to a Multi-AZ Amazon ElastiCache for Redis cluster. Options A and C are incorrect because they continue to rely on a single EC2 instance, which represents a single point of failure. Option B is incorrect because hosting static content on AWS Lambda is inefficient compared to using S3 and CloudFront, and containerizing the PHP app is a more suitable migration path than rewriting it for Lambda.