Question #1933
A company has developed a data analytics platform composed of multiple microservices, each handling a distinct data processing task. A single development team manages all microservices. The current architecture uses a static web dashboard, a Python-based backend hosted on an Amazon EC2 instance, and a PostgreSQL database running on another EC2 instance. The company needs to ensure the platform is secure, highly available, and globally accessible with minimal operational overhead. Which solution meets these requirements MOST effectively?
Use Amazon CloudFront and AWS Amplify to host the static web dashboard. Refactor the microservices into AWS Lambda functions accessed via Amazon API Gateway. Migrate the PostgreSQL database to an Amazon EC2 Reserved Instance.
Use Amazon CloudFront and Amazon S3 to host the static web dashboard. Refactor the microservices into AWS Lambda functions accessed via Amazon API Gateway. Migrate the PostgreSQL database to Amazon RDS for PostgreSQL.
Use Amazon CloudFront and Amazon S3 to host the static web dashboard. Refactor the microservices into AWS Lambda functions behind a Network Load Balancer. Migrate the PostgreSQL database to Amazon RDS for PostgreSQL.
Use Amazon S3 to host the static web dashboard. Refactor the microservices into AWS Lambda functions behind an Application Load Balancer. Migrate the PostgreSQL database to an Amazon EC2 Reserved Instance.
Explanation
The correct answer is B because:
1. Static Web Dashboard: Amazon S3 with CloudFront provides secure, highly available, and globally accessible static hosting with built-in CDN caching.
2. Microservices: Refactoring into AWS Lambda with API Gateway eliminates EC2 management, enables automatic scaling, and reduces operational overhead. API Gateway also provides security features like authentication and rate limiting.
3. Database: Migrating to Amazon RDS for PostgreSQL ensures high availability (via Multi-AZ deployments), automated backups, and managed maintenance, reducing operational tasks compared to EC2.
Other options are less optimal:
- A/D: Use EC2 for the database, requiring manual management.
- C: Uses Network Load Balancer (NLB), which is less suited for HTTP-based microservices compared to API Gateway.
- D: Uses EC2 for the database and lacks CloudFront, reducing global accessibility.
Key Points: Prioritize managed services (S3, Lambda, RDS) for scalability, availability, and reduced operations. Use API Gateway for serverless HTTP APIs and CloudFront for global content delivery.
Answer
The correct answer is: B