AWS Certified Solutions Architect Associate SAA-C03 Practice Question
A development team is refactoring a monolithic web application into microservices. Each microservice requires its own language runtime and several native OS libraries. The team wants to package every microservice with its dependencies so that it runs consistently across development, test, and production environments. They also need to deploy and scale each microservice independently without managing any underlying servers.
Which AWS solution best meets these requirements?
Use AWS Elastic Beanstalk with the Python platform to deploy all microservices together in a single environment.
Convert every microservice into an AWS Lambda function running in a standard runtime and expose them through Amazon API Gateway.
Deploy the entire application on a single Auto Scaling group of Amazon EC2 instances, installing all runtimes with user-data scripts.
Package each microservice as a Docker container image and deploy it on Amazon ECS using the AWS Fargate launch type.
Packaging each microservice as a Docker container image and running it on Amazon ECS with the AWS Fargate launch type fulfills all requirements:
− Containers encapsulate the code, runtimes, and native libraries, ensuring consistency and portability across environments. − ECS with Fargate is a serverless container option, so the team does not provision or manage EC2 nodes. − Each ECS service represents a single microservice and can be independently deployed and auto-scaled.
The other options are less suitable:
EC2 hosts all services together, so packaging and independent scaling are not achieved.
Standard AWS Lambda runtimes may not support the required native libraries, and packaging large runtimes into Lambda container images would still require per-function limits (10 GB image, 15-minute execution) and is unnecessary complexity compared with containers on ECS.
Deploying all microservices in one Elastic Beanstalk environment defeats the goal of independent deployment and scaling.
Ask Bash
Bash is our AI bot, trained to help you pass your exam. AI Generated Content may display inaccurate information, always double-check anything important.
What are microservices, and how do they differ from traditional monolithic architectures?
Open an interactive chat with Bash
What are the benefits of using container orchestration platforms like Amazon ECS or EKS?
Open an interactive chat with Bash
How do containers ensure consistency across different environments?