Practice
Solution
Step 1: Trace Metadata Service validation at Step 4
The Metadata Service performs synchronous validation; failure causes immediate rejection to prevent invalid data.Step 2: Eliminate other options
Writing without metadata update breaks consistency, async retry delays error feedback, and storing invalid data risks corruption.Final Answer:
Option A -> Option AQuick Check:
Metadata validation failure causes immediate client error [check]
Solution
Step 1: Understand Bloom filter role in reads
Bloom filters prevent unnecessary disk reads for non-existent keys but do not affect correctness of existing keys.Step 2: Trace failure without Bloom filters
Without Bloom filters, reads for non-existent keys cause disk lookups, increasing latency but do not cause incorrect key-not-found errors for existing keys; however, missing Bloom filters can cause stale data to be returned if caching is mismanaged.Final Answer:
Option D -> Option DQuick Check:
Removing Bloom filters risks incorrect key-not-found errors due to stale cache [check]
Solution
Step 1: Analyze consistency and throughput requirements
Strong consistency with high throughput and fault tolerance requires decoupling writes and reads with durable event logs.Step 2: Evaluate architectures
Centralized DB (A) limits throughput and is a single point of failure; NoSQL eventual consistency (C) violates strong consistency; synchronous REST calls (D) increase latency and reduce fault tolerance. Event sourcing with Kafka (B) provides durable, ordered events and scalable materialized views.Final Answer:
Option A -> Option AQuick Check:
Event sourcing with Kafka -> strong consistency and scalability [check]
Solution
Step 1: Understand reverse proxy SSL termination failure
If the reverse proxy crashes, SSL termination stops, so backend servers receive unencrypted traffic if clients connect directly or fallback occurs.Step 2: Eliminate other options
Clients cannot connect directly if proxy is mandatory; SSL handshake fails only if proxy blocks connection; proxy can't forward encrypted requests without decrypting if crashed.Final Answer:
Option C -> Option CQuick Check:
Reverse proxy crash exposes backend to unencrypted traffic [check]
Solution
Step 1: Identify stateful bottleneck
Chat servers maintain WebSocket connections bound to server memory, limiting horizontal scaling and resharding.Step 2: Compare other components
Database (A) can be scaled with sharding; message queue (C) partitions can be increased; load balancer (D) scales horizontally.Step 3: Explain failure mechanism
WebSocket statefulness causes connection limits per server, leading to failure under 10x load.Final Answer:
Option A -> Option AQuick Check:
Stateful WebSocket limits -> chat servers fail first at scale [check]
