Courseiva

SAA-C03 Design Resilient Architectures Practice Question

A payments API uses Amazon SQS. Poison messages are repeatedly failing and blocking useful retries. What should the architect configure? The design must avoid adding custom operational scripts.

⚠ Common exam trap

Watch out — candidates often think increasing retention or switching polling modes solves poison messages, but only a DLQ with maxReceiveCount directly addresses repeated failures without custom scripts.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

A dead-letter queue with an appropriate maxReceiveCount

A dead-letter queue (DLQ) with an appropriate maxReceiveCount allows messages that repeatedly fail processing to be moved out of the source queue after a specified number of receive attempts. This prevents poison messages from blocking retries and consuming processing resources, without requiring custom operational scripts.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    A FIFO queue without a redrive policy

    Why it's wrong here

    FIFO queues provide message ordering and exactly-once processing but do not inherently keep a message from being retried forever. Without a redrive policy, a message that consistently fails can remain in the queue until its retention period expires, and in a FIFO queue it will also block all subsequent messages in the same message group. So ordering alone doesn't quarantine or stop the poison message.

  • ✓

    A dead-letter queue with an appropriate maxReceiveCount

    Why this is correct

    A dead-letter queue with a configured maxReceiveCount is the standard SQS mechanism for poison messages. When a message is received that many times without being deleted, SQS automatically moves it to a separate DLQ, isolating the problematic message from the main queue. This lets you inspect and debug the payload while healthy traffic continues unaffected. This also protects downstream consumers from continuous failure loops.

  • ✗

    A larger message retention period only

    Why it's wrong here

    Increasing the message retention period only controls how long SQS stores undelivered messages (up to 14 days). It does not alter the receive failure threshold or create a separate queue for problematic messages. A poison message will simply keep being redelivered and failing for a longer time, increasing wasted consumption and delaying the eventual purge. Thus it offers no isolation or investigation benefit.

  • ✗

    Short polling instead of long polling

    Why it's wrong here

    Short polling returns receive responses immediately, regardless of whether messages are available, while long polling waits until a message arrives or a timeout. This choice affects API call efficiency, cost, and latency but has no effect on how SQS counts receive attempts or decides to redrive messages. Poison message handling is completely independent of the polling mechanism, so switching to short polling does not address repeated failures.

About these practice questions

This SAA-C03 question is part of Courseiva's 935-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This SAA-C03 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SAA-C03 exam.