Q13 — AWS SAA-C03 Ch.14
Question 13 of 100 | ← Chapter 14
Q1013. An ecommerce company is preparing to deploy a web application on AWS to ensure continuous service for customers. The architecture includes a web application that the company hosts on Amazon EC2 instances, a relational database in Amazon RDS, and static assets that the company stores in Amazon S3.The company wants to design a robust and resilient architecture for the application.Which solution will meet these requirements?
- A. Deploy Amazon EC2 instances in a single Availability Zone. Deploy an RDS DB instance in the same Availability Zone. Use Amazon S3 with versioning enabled to store static assets.
- B. Deploy Amazon EC2 instances in an Auto Scaling group across multiple Availability Zones. Deploy a Multi-AZ RDS DB instance. Use Amazon CloudFront to distribute static assets. ✓
- C. Deploy Amazon EC2 instances in a single Availability Zone. Deploy an RDS DB instance in a second Availability Zone for cross-AZ redundancy. Serve static assets directly from the EC2 instances.
- D. Use AWS Lambda functions to serve the web application. Use Amazon Aurora Serverless v2 for the database. Store static assets in Amazon Elastic File System (Amazon EFS) One Zone-Infrequent Access (One Zone-IA).
Correct Answer: B. Deploy Amazon EC2 instances in an Auto Scaling group across multiple Availability Zones. Deploy a Multi-AZ RDS DB instance. Use Amazon CloudFront to distribute static assets.
Explanation
To design a robust and resilient architecture for the ecommerce application on AWS, the best solution is:B. Deploy Amazon EC2 instances in an Auto Scaling group across multiple Availability Zones. Deploy a Multi-AZ RDS DB instance. Use Amazon CloudFront to distribute static assets.Explanation:\1. Auto Scaling Group Across Multiple Availability Zones: - Deploying EC2 instances in an Auto Scaling group across multiple Availability Zones ensures that if one AZ experiences issues, the application can continue to serve traffic from instances in other AZs. This enhances availability and fault tolerance.\2. Multi-AZ RDS DB Instance: - Using a Multi-AZ RDS deployment provides high availability for the database. In the event of a failure of the primary instance, Amazon RDS automatically fails over to a standby instance in another AZ, ensuring minimal downtime.\3. Amazon CloudFront for Static Assets: - Leveraging Amazon CloudFront as a Content Delivery Network (CDN) to distribute static assets improves performance by caching content closer to users and providing redundancy. This reduces latency and enhances the user experience.Evaluation of Other Options:A. Deploy EC2 instances in a single Availability Zone: This option lacks fault tolerance. If the AZ goes down, the application becomes unavailable. While S3 with versioning can protect data, it does not enhance application availability.C. Deploy EC2 instances in a single Availability Zone: Similar to option A, this approach does not provide redundancy. While having an RDS instance in a second AZ could help with database availability, serving static assets directly from EC2 instances is less efficient than using a CDN.D. Use AWS Lambda functions to serve the web application: This serverless approach could work but may not be the most suitable for all web applications, especially if they require stateful connections or have specific performance needs. Additionally, using EFS One Zone-IA does not provide high availability, as it is only available in a single AZ.Conclusion:Option B provides the best combination of high availability, resilience, and performance for the ecommerce application, ensuring continuous service for customers.