Exams / SAA-C03 / Choosing compute / Question 2
SAA-C03 practice question: Choosing compute (2 of 3)
Design High-Performing Architectures A free question from our original SAA-C03 practice exam. Try it, then open the answer to see why each option is right or wrong.
A logistics company has packaged eight microservices as container images. The services run all day behind an Application Load Balancer, and a nightly reconciliation job runs for about 2 hours. The operations team is small and does not want to patch operating systems, choose instance types or right-size a fleet of hosts. Each workload should be billed for the CPU and memory it requests. Which solution meets these requirements?
Choose one answer.
- AA. Run the services and the nightly job on Amazon ECS with an Auto Scaling group capacity provider that uses the latest ECS-optimised AMI.
- BB. Run the services as Amazon ECS services on AWS Fargate, and start the nightly job as a Fargate task from an EventBridge Scheduler schedule.
- CC. Deploy the services and the nightly job as AWS Lambda functions packaged as container images, invoked by the load balancer and by a schedule.
- DD. Deploy the services to AWS Elastic Beanstalk on the Docker platform with managed platform updates, and run the nightly job with cron on an instance.
Show the answer and explanation
Answer: B
- A. Wrong: ECS on an Auto Scaling group capacity provider runs the containers well, but the EC2 instances are self-managed. The team would still choose instance types, patch and replace the AMIs, and pay for whole instances rather than for what each task requests. Fargate removes that work. Learn more: Amazon ECS capacity providers for EC2 workloads (opens in a new tab)
- B. Right: Correct. With Fargate there are no servers or clusters of instances to provision, patch or scale, and each task is sized and billed by the CPU and memory it requests. Fargate tasks can run for as long as needed, and EventBridge Scheduler can start the 2-hour job as an ECS task on a cron schedule. Learn more: Using Amazon EventBridge Scheduler to schedule Amazon ECS tasks (opens in a new tab)
- C. Wrong: Lambda accepts container images and removes server management, and it suits short request-driven code. However, a Lambda invocation has a maximum timeout of 15 minutes (90 minutes only for some invocation types on Lambda Managed Instances), so a 2-hour job cannot run as a single function. Learn more: Lambda quotas (opens in a new tab)
- D. Wrong: Elastic Beanstalk with managed platform updates takes over much of the patching, but it still runs EC2 instances in the account. The team would choose instance types, pay for whole instances, and keep a cron job on one instance, which is the host management it wants to avoid. Learn more: What is AWS Elastic Beanstalk? (opens in a new tab)
Explanation
AWS Fargate runs ECS tasks without any EC2 instances to choose, patch or scale. Each task declares its CPU and memory and is billed for them, and tasks can run for hours, so both the long-running services and the 2-hour nightly job fit. Lambda's 15-minute timeout rules it out for the job, and the EC2-based options leave the team managing instances.
Study
Keep practising
Answer questions with a score at the end, or practise just this topic with the explanation after each one. No sign-up needed.