Practice
Solution
Step 1: Identify zero downtime requirement
Blue-Green deployment uses two identical environments and switches traffic instantly, ensuring zero downtime.Step 2: Eliminate other options
Canary is gradual, not instant; Feature flags don't switch entire environments; Rolling updates cause partial downtime.Final Answer:
Option D -> Option DQuick Check:
Blue-Green switches environments instantly for zero downtime [check]
Solution
Step 1: Identify the need for near real-time numerical data aggregation
Metrics systems collect numerical data like latency and error rates continuously and support alerting.Step 2: Eliminate logging and tracing for this use case
Logging is better for detailed event records, not real-time aggregation; tracing is for request path debugging, not metrics aggregation.Final Answer:
Option D -> Option DQuick Check:
Metrics aggregate numerical data for alerts and dashboards [check]
Solution
Step 1: Understand Kafka's role in decoupling
Kafka buffers messages asynchronously, preventing blocking and enabling retries during outages.Step 2: Analyze failure without Kafka
Without Kafka, synchronous calls block sender until receiver responds; if receiver crashes, message is lost with no retry (B). However, buffering on client (C) is incorrect as buffering is server-side.Final Answer:
Option A -> Option AQuick Check:
No Kafka -> synchronous send blocks and message loss on receiver crash [check]
Solution
Step 1: Understand WAL role in replication
WAL is the source of truth for replicas to catch up incrementally.Step 2: Trace failure impact
If WAL is lost, replicas cannot catch up incrementally and must request full snapshot, causing load and delay.Final Answer:
Option A -> Option AQuick Check:
Lost WAL -> replicas request full snapshot -> recovery delay [check]
Solution
Step 1: Trace failure impact on booking flow
Loss of connectivity prevents immediate calendar update, risking inconsistency.Step 2: Analyze failure handling
Immediate confirmation without calendar update (A) risks double bookings; timeout with error (B) hurts UX; automatic retry without delay (D) is unrealistic under network failure. Local queuing (C) allows eventual consistency with delayed confirmation.Final Answer:
Option A -> Option AQuick Check:
Local queuing delays confirmation but prevents data loss [check]
