Practice
Solution
Step 1: Understand Kafka offset commit semantics
If the worker crashes before committing the offset, Kafka will re-deliver the same batch after restart to ensure no data loss.Step 2: Analyze implications of re-delivery
This can cause duplicate indexing unless the system is idempotent or deduplicates updates.Final Answer:
Option C -> Option CQuick Check:
Uncommitted Kafka offsets cause re-delivery on restart [check]
Solution
Step 1: Role of Kafka in decoupling send and delivery
Kafka buffers messages asynchronously, preventing sender blocking on recipient availability.Step 2: Consequence of removing Kafka
Sender must synchronously wait for recipient response; if recipient crashes, message is lost with no retry.Final Answer:
Option A -> Option AQuick Check:
No queue causes synchronous blocking and message loss on recipient failure [check]
Solution
Step 1: Evaluate latency and consistency trade-offs
Global synchronous quorum to all regions (A) causes high latency; asynchronous (B) sacrifices strong consistency.Step 2: Consider local quorum with global reconciliation
Local quorum writes reduce latency while global reconciliation maintains strong consistency.Final Answer:
Option D -> Option DQuick Check:
Local quorum + global reconciliation balances latency and consistency [check]
Solution
Step 1: Identify Tenant Metadata Service role
This service provides tenant context metadata used for billing attribution and feature flag evaluation.Step 2: Trace failure impact without Tenant Metadata Service
Without it, billing events lack tenant IDs, so usage cannot be correctly attributed, losing revenue tracking.Final Answer:
Option C -> Option CQuick Check:
Missing tenant metadata -> billing events unassigned, lost revenue [check]
Solution
Step 1: Understand Kafka's role in event streaming
Kafka buffers and reliably delivers connection events to downstream services asynchronously.Step 2: Trace failure impact
If Kafka is down, writes to Kafka fail but connection requests may still be accepted at the API layer; however, downstream consumers do not get updates, causing stale graph state.Final Answer:
Option D -> Option DQuick Check:
Kafka down -> downstream stale, no immediate request loss [check]
