An e-commerce application receives and processes orders, then stores order data in Amazon DynamoDB. Traffic is sporadic but can spike during campaigns; the system must scale and process orders with minimal delay. Which design is the MOST reliable, simple, highly available, and loosely coupled way to receive and process orders?
Choose an answer
Tap an option to check your answer.
Correct answer: Receive orders into an Amazon SQS queue and invoke an AWS Lambda function to process them..
Why this is the answer
Receiving orders into an Amazon SQS queue and invoking an AWS Lambda function to process them is the most reliable, simple, highly available, and loosely coupled solution. SQS provides a highly available, scalable, and durable buffer for incoming orders, decoupling the order receipt from processing. Lambda functions are serverless, scale automatically with demand, and are invoked asynchronously by SQS, ensuring orders are processed with minimal delay even during traffic spikes. This architecture eliminates the need to manage servers, simplifying operations. Using a database on EC2 for order receipt introduces a single point of failure and requires manual scaling. AWS Step Functions add unnecessary complexity for simple order processing. Kinesis Data Streams are suitable for real-time analytics but might be overkill for basic order processing and still require managing EC2 instances for consumers.
Pass your exam — without the endless answer hunt
Get every verified question and explanation for this exam in one place, and save hours of prep. 1,000+ certifications · 20+ languages · free to start.
Pass your exam faster → No card needed