AWS Certified Solutions Architect – Professional — Question 818
An e-commerce company is revamping its IT infrastructure and is planning to use AWS services. The company's CIO has asked a Solutions Architect to design a simple, highly available, and loosely coupled order processing application. The application is responsible for receiving and processing orders before storing them in an Amazon DynamoDB table. The application has a sporadic traffic pattern and should be able to scale during marketing campaigns to process the orders with minimal delays.
Which of the following is the MOST reliable approach to meet the requirements?
Answer options
- A. Receive the orders in an Amazon EC2-hosted database and use EC2 instances to process them.
- B. Receive the orders in an Amazon SQS queue and trigger an AWS Lambda function to process them.
- C. Receive the orders using the AWS Step Functions program and trigger an Amazon ECS container to process them.
- D. Receive the orders in Amazon Kinesis Data Streams and use Amazon EC2 instances to process them.
Correct answer: B
Explanation
Using Amazon SQS decouples the order ingestion from processing, while AWS Lambda automatically scales in response to sporadic traffic to process messages with minimal delay, meeting all requirements for simplicity and high availability. Options relying on Amazon EC2 (A and D) introduce administrative overhead for managing servers and scaling policies. Option C, using AWS Step Functions and Amazon ECS, adds unnecessary complexity for a simple order processing and storage workflow.