Practice
Solution
Step 1: Trace Delivery Worker decision at Step 4 -- message visibility timeout
If the message is not acknowledged within the visibility timeout, it becomes visible again for redelivery to ensure no message loss.Step 2: Eliminate incorrect options
Immediate deletion (A) risks message loss; archiving without retry (C) breaks availability; blocking (D) reduces throughput and availability.Final Answer:
Option C -> Option CQuick Check:
Visibility timeout expiry -> message re-queued for retry [check]
Solution
Step 1: Understand LFU eviction criteria
LFU evicts the cache entry with the lowest access frequency to keep frequently used items.Step 2: Analyze eviction candidate state at step 4
The candidate selected for eviction must have the lowest frequency count; frequency is not reset or ignored.Final Answer:
Option D -> Option DQuick Check:
LFU evicts lowest frequency count keys [check]
Solution
Step 1: Identify the importance of requirements gathering
Clarifying requirements and constraints defines the problem scope, preventing wasted effort on irrelevant details.Step 2: Eliminate premature design steps
Starting with database design or coding ignores the need to understand what to build, risking misaligned solutions.Final Answer:
Option C -> Option CQuick Check:
Clarify scope first -> focused design [check]
Solution
Step 1: Understand cache TTL impact
When the cache expires, the service assumes no prior usage until refreshed, allowing requests that may exceed limits.Step 2: Evaluate other options
Rejecting all requests or blocking permanently is too harsh; synchronous DB queries per request cause latency and overload.Final Answer:
Option B -> Option BQuick Check:
Expired cache -> assume zero usage -> risk over-limit [check]
Solution
Step 1: Identify system components at scale
Rendezvous Hashing is decentralized, so no central coordinator (The central coordinator fails due to increased coordination overhead) exists. Nodes do not broadcast state to all others (The network bandwidth saturates because all nodes broadcast state to each other) in typical implementations.Step 2: Analyze client-side routing impact
Clients must compute scores for all nodes to pick highest; at 10x scale, this computation and memory for node lists become bottlenecks.Step 3: Consider hash computation cost
Hash computations (The hash function computation becomes a CPU bottleneck due to increased node and key counts) are lightweight compared to maintaining large node lists and score computations.Final Answer:
Option A -> Option AQuick Check:
Client routing logic scales poorly with node list size -> bottleneck [check]
