A company deployed a serverless application where an AWS Lambda function processes new documents uploaded to an Amazon S3 bucket. After a marketing campaign, many documents were not processed. What should a solutions architect do to improve this architecture?
Choose an answer
Tap an option to check your answer.
Correct answer: Create an Amazon Simple Queue Service (Amazon SQS) queue. Send the requests to the queue. Configure the queue as an event source for Lambda..
Why this is the answer
The correct answer is to create an Amazon SQS queue, send requests to it, and configure it as a Lambda event source. This decouples the S3 event from the Lambda invocation, allowing SQS to buffer events during peak loads. Lambda can then process messages from the queue at its own pace, retrying failed invocations and handling concurrency more effectively, preventing unprocessed documents. Setting the Lambda timeout to 15 minutes might help with long-running tasks but doesn't address the core issue of overwhelming the function with too many concurrent invocations. S3 bucket replication is for disaster recovery or latency, not for managing Lambda processing backlogs. Deploying an additional Lambda function without a queue still risks overwhelming both functions if the event rate exceeds their combined processing capacity.
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