Practice
Solution
Step 1: Understand retry limit enforcement
When max retries are exceeded, messages should not be retried endlessly to avoid infinite loops.Step 2: Identify correct failure handling
Moving messages to a permanent failure store (C) enables manual inspection and prevents loss.Final Answer:
Option B -> Option BQuick Check:
Exceeded retries -> move to permanent failure store, not discard or infinite retry [check]
Solution
Step 1: Understand coordinator role in Cassandra write path
The coordinator routes writes to all replicas responsible for the partition key; if one replica is down, it routes to the others.Step 2: Evaluate failure handling
Writes are not failed immediately if a replica is down; coordinator does not retry indefinitely on the same node; no fallback to relational DB.Final Answer:
Option C -> Option CQuick Check:
Coordinator routes writes to available replicas -> ensures write availability [check]
Solution
Step 1: Trace failure without rollback
Misconfigurations propagate incorrect routes; without rollback, manual detection delays fix.Step 2: Eliminate other failure modes
Silent drops (A) don't occur; automatic quarantine (C) would cause total outage, not typical; alert floods (D) don't prevent traffic misrouting.Final Answer:
Option D -> Option DQuick Check:
Manual fix delays cause prolonged incorrect routing [check]
Solution
Step 1: Identify lock service role in reservation flow
The lock service ensures exclusive access to room inventory during reservation to prevent double booking.Step 2: Trace failure impact
Without the lock service, Inventory cannot reliably mark rooms as unavailable, leading to stale or incorrect availability states shown to users (Inventory service marks rooms as available incorrectly, causing UI to show wrong availability). Reservations may still proceed but with inconsistent inventory state. Blocking indefinitely (Reservation requests block indefinitely waiting for locks, causing user timeouts and failed bookings) is unlikely as fallback mechanisms exist. Payment processing (Payment processing fails because it depends on the lock service for transaction ordering) is independent of locking. Double bookings (Reservations proceed normally but double bookings increase due to lack of coordination) may increase but the immediate failure is incorrect inventory state.Final Answer:
Option C -> Option CQuick Check:
Lock service failure causes stale inventory availability state [check]
Solution
Step 1: Understand Kafka's role in fan-out delivery
Kafka acts as a durable queue for fan-out messages. If it crashes, Delivery Workers cannot fetch new messages, causing stale feeds.Step 2: Evaluate failure modes
Posts are not lost immediately (A) due to Kafka's durability; writes are asynchronous so no blocking (B); duplicates (D) occur only on replay, not crash.Final Answer:
Option D -> Option DQuick Check:
Kafka crash stalls delivery, causing stale feeds [check]
