Which solution will meet these requirements?
Host static content in Amazon S3. Host dynamic content by using Amazon API Gateway and AWS Lambda. Use Amazon DynamoDB with on-demand capacity for the database. Configure Amazon CloudFront to deliver the website content.
Host static content in Amazon S3. Host dynamic content by using Amazon API Gateway and AWS Lambda. Use Amazon Aurora with Aurora Auto Scaling for the database. Configure Amazon CloudFront to deliver the website content.
Host all the website content on Amazon EC2 instances. Create an Auto Scaling group to scale the EC2 instances. Use an Application Load Balancer to distribute traffic. Use Amazon DynamoDB with provisioned write capacity for the database.
Host all the website content on Amazon EC2 instances. Create an Auto Scaling group to scale the EC2 instances. Use an Application Load Balancer to distribute traffic. Use Amazon Aurora with Aurora Auto Scaling for the database.
Explanations:
This option minimizes server maintenance by using serverless architecture with AWS Lambda, which automatically scales to meet demand. Amazon DynamoDB with on-demand capacity allows for quick scaling of both read and write operations. Hosting static content on Amazon S3 and using Amazon CloudFront ensures high availability and fast content delivery.
While this option uses serverless components and can scale well, Amazon Aurora introduces more maintenance and patching responsibilities compared to DynamoDB. Aurora is a managed relational database, but it still requires some level of administrative overhead, which contradicts the requirement to minimize server maintenance.
Hosting all content on EC2 instances increases maintenance needs and requires manual scaling efforts. Although it mentions an Auto Scaling group, it still involves more management. Using provisioned write capacity in DynamoDB doesn’t allow for the rapid scaling required to meet changing demands as effectively as on-demand capacity.
Similar to option C, hosting everything on EC2 increases maintenance and requires manual intervention for scaling. Although it uses Aurora with auto scaling, it still entails more complexity and maintenance compared to a fully serverless approach. Aurora requires more management than DynamoDB in this context.