A satellite telemetry pipeline places small data packets into an Amazon SQS standard queue. A downstream application transforms the messages but sometimes cannot transform certain messages; those failed messages remain in the SQS queue. The DevOps engineer must retain failed messages and make them available to scientists for review and later reprocessing. Which solution meets these requirements?
Choose an answer
Tap an option to check your answer.
Correct answer: Create an SQS dead-letter queue (DLQ). Update the original queue's redrive policy to send messages to the DLQ after 1 maximum receive. Have scientists inspect the DLQ and reprocess messages later..
Why this is the answer
Creating an SQS dead-letter queue (DLQ) is the most appropriate solution. A DLQ is specifically designed to handle messages that a consumer application fails to process successfully. By setting the original queue's redrive policy to send messages to the DLQ after a maxReceiveCount of 1, any message that the downstream application fails to transform on its first attempt will be automatically moved to the DLQ. This retains the failed messages for scientists to review and reprocess later, directly addressing the requirements. The other options are less suitable: Using Lambda to poll and copy to S3 adds unnecessary complexity and doesn't leverage SQS's built-in error handling. Converting to FIFO is unnecessary as the problem doesn't specify strict ordering requirements, and moving messages based on age doesn't directly address failed processing. Using virtual SQS queues per satellite via API Gateway introduces significant architectural overhead and doesn't inherently solve the problem of failed message handling within a single queue.
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