Practice
1. In a fraud detection system ingesting thousands of transactions per second, which component is best suited to decouple the high-throughput transaction ingestion from downstream real-time scoring to avoid backpressure?
easy
Solution
Step 1: Identify decoupling mechanism
Relational DB batch inserts (A) add latency and don't handle high write throughput well. Redis (C) lacks durability guarantees for buffering. Direct synchronous calls (D) cause backpressure and tight coupling.Step 2: Evaluate Kafka suitability
Kafka supports high-throughput, partitioned by user ID to maintain ordering per user, and durable storage, enabling asynchronous processing and backpressure handling.Final Answer:
Option D -> Option DQuick Check:
Kafka partitions decouple ingestion and scoring with durability and ordering [check]
Hint: Kafka partitions buffer high-throughput streams reliably [check]
Common Mistakes:
2. In a system trace, at Step 3 the Storage Estimator component calculates daily storage needs. If the average object size is 2MB and the system expects 500K new objects daily, what is the storage estimate at Step 3?
easy
Solution
Step 1: Calculate daily storage
Multiply 500,000 objects by 2MB each = 1,000,000 MB = 1TB per day.Step 2: Eliminate other options
500GB per day, assuming 1MB average object size instead uses wrong object size; 2TB per day, assuming 4MB average object size instead doubles size incorrectly; Cannot estimate without knowing retention period ignores that retention affects total storage, not daily estimate.Final Answer:
Option B -> Option BQuick Check:
500K x 2MB = 1TB daily storage [check]
Hint: Daily storage = object count x average size [check]
Common Mistakes:
3. If the recursive DNS server's cache is completely disabled, what is the most immediate failure mode experienced by users during domain resolution?
medium
Solution
Step 1: Understand recursive server caching role
The recursive DNS server cache reduces query latency by storing recent results. Without caching, every query requires a full resolution chain traversal.Step 2: Trace failure impact
Without cache, recursive server must synchronously query authoritative servers for every request, causing increased latency and possible timeouts, blocking user queries.Final Answer:
Option D -> Option DQuick Check:
No cache -> synchronous queries -> high latency and blocking [check]
Hint: No cache means blocking queries until authoritative response [check]
Common Mistakes:
4. For a high-traffic public API requiring both strong security and minimal latency, which TLS configuration trade-off is most appropriate?
medium
Solution
Step 1: Evaluate TLS versions and key exchange
TLS 1.3 supports ephemeral key exchange (ECDHE) which provides forward secrecy and reduces handshake round trips, lowering latency.Step 2: Eliminate other options
Use TLS 1.0 with RSA key exchange for compatibility uses outdated TLS 1.0 and RSA key exchange lacking forward secrecy and higher latency. Disable certificate validation to speed up connections compromises security by disabling validation. Use self-signed certificates to avoid certificate chain overhead risks trust issues and is unsuitable for public APIs.Final Answer:
Option A -> Option AQuick Check:
TLS 1.3 ephemeral keys -> forward secrecy + lower latency [check]
Hint: TLS 1.3 ephemeral keys = forward secrecy + low latency [check]
Common Mistakes:
5. At 10x scale, which component fails first in a chat system and why?
hard
Solution
Step 1: Identify stateful components limiting scale
Chat servers maintain stateful WebSocket connections bound to server memory, limiting horizontal scaling.Step 2: Compare other components' scalability
Databases can be sharded; Kafka partitions can be increased; load balancers scale horizontally. Stateful chat servers cannot easily move existing connections.Final Answer:
Option A -> Option AQuick Check:
Stateful WebSocket servers bottleneck scaling first [check]
Hint: Stateful WebSocket servers block scaling first [check]
Common Mistakes:
