Practice
Solution
Step 1: Identify failure isolation mechanism
Global circuit breakers (A) affect all services, causing blast radius expansion. Centralized load balancers (C) reroute but don't isolate resource exhaustion. Distributed cache (D) reduces load but doesn't isolate failures.Step 2: Understand bulkhead pattern role
Bulkheads partition resources (e.g., connection pools) per service, preventing one service's failure from impacting others.Final Answer:
Option A -> Option AQuick Check:
Bulkheads isolate failures by resource partitioning [check]
Solution
Step 1: Understand traffic variability
Clients open varying numbers of connections, so servers can become unevenly loaded if requests are assigned blindly.Step 2: Evaluate load balancing algorithms
Round Robin ignores current load, IP Hash pins clients to servers (may cause imbalance), Weighted Round Robin uses static weights ignoring dynamic load. Least Connections dynamically balances based on active connections.Final Answer:
Option D -> Option DQuick Check:
Least Connections adapts to real-time load, balancing uneven client connections [check]
Solution
Step 1: Understand offset commit role
Offset commits record progress; disabling commits means no progress saved.Step 2: Trace failure impact
On crash, consumer restarts from last committed offset (which is old), reprocessing messages and causing duplicates.Final Answer:
Option D -> Option DQuick Check:
No offset commit -> consumer may fail to rejoin group due to missing offsets [check]
Solution
Step 1: Identify stateful bottlenecks at scale
Routing tables maintaining session persistence are stateful and hard to shard, causing scaling limits.Step 2: Compare other components
Health checks scale horizontally; backend servers scale independently; DNS resolvers can be cached and distributed.Final Answer:
Option A -> Option AQuick Check:
Stateful routing tables limit scaling due to session affinity [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]
