AWS Certified Solutions Architect Associate SAA-C03 Practice Question
An online retail application is being developed to handle erratic and potentially high numbers of incoming orders. Each order must be processed, but immediate processing is not required. Which approach would ensure the application remains scalable while maintaining loose coupling between the order reception and processing components?
Logging of each transaction to an Amazon Kinesis stream, with continuous processing by an auto-scaling group of virtual servers.
Immediate processing of orders through synchronous execution within the same service that captures the customer transactions.
Placement of orders into an Amazon Simple Queue Service (Amazon SQS) queue that allows deferred processing by a dedicated order-management component.
Insertion of order details into an Amazon DynamoDB table, triggering an AWS Lambda function to process the order.
Amazon Simple Queue Service (Amazon SQS) acts as a durable buffer that can absorb sudden traffic spikes. The order-receiving tier simply enqueues each order, and one or more consumer processes pull messages off the queue at their own pace. This asynchronous, queue-based pattern eliminates direct dependencies between the front-end and the processing tier, preventing overload during bursts. In contrast, synchronous processing or direct invocation (answers A, C, and D) re-introduce tight coupling or unnecessary complexity for a simple 'fire-and-forget' workload.
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 is Amazon SQS and how does it ensure scalability?
Open an interactive chat with Bash
What are the benefits of asynchronous processing in a system like this?
Open an interactive chat with Bash
Why are the other options incorrect for this scenario?