Menu

Earn Premium with Referrals

Invite your friends and earn Premium rewards through our referral program.

See how it works and start inviting friends.

Active-Active Tradeoffs
HLD

Active-Active Tradeoffs

The full ledger of running every region hot — what you gain, what you sign up for.

The Complete Gains Ledger

 □ RTO ≈ seconds (reroute, no failover ceremony)
 □ latency locality for ALL users simultaneously
 □ zero idle standby capacity — everything earns
 □ rolling regional maintenance without capacity cliffs
 □ regional blast-radius containment (one of N degrades)

The Complete Costs Ledger

 COMPLEXITY:
 - conflict-resolution machinery or write-homing discipline
 - replication topologies to operate and monitor
 - every feature reviewed through a multi-region lens

 CONSISTENCY:
 - eventual windows between regions (UX must acknowledge)
 - cross-region invariants need design (uniqueness! quotas!)

 OPERATIONS:
 - N× infrastructure minimums + headroom everywhere
 - debugging spans regions (correlation ids global!)
 - drills more elaborate; runbooks longer

 COST:
 - typically 2–3× single-region for same peak traffic
   (headroom per region for survivor-absorption)

 the honest summary: AA doesn't add features;
 it adds a PERMANENT TAX on engineering attention.
 pay it only when its gains are requirements.

The Decision Framework

 go active-active when MOSTLY TRUE:
 □ global user base where locality = product value
 □ region-loss downtime genuinely unacceptable (business-defining)
 □ data model tolerates homing/eventual semantics
 □ organization can OPERATE the complexity (mature platform team)

 stay active-passive when:
 □ single-major-region user base
 □ minutes-class RTO acceptable (warm standby)
 □ consistency model simpler as single-writer
 □ complexity budget spent elsewhere

 the middle path most companies actually take:
 AP first → AA for the FEW truly-global-critical flows
           → gradual expansion as operational muscle grows.

Hidden Requirements Checklist

 before committing, verify readiness:

 □ GLOBAL unique IDs (region-prefixed/UUID) from day one
 □ idempotent replication application (duplicates happen)
 □ replication-lag dashboards + budgets per stream
 □ re-homing tooling (users move; regions fail)
 □ global config/features rollout ordering story
 □ cross-region tracing with clocks you don't fully trust
 □ game days exercising PARTIAL region degradation
   (the common case, not clean total loss)

Interview Framing

“Should this system be active-active?” scored shape: BOTH ledgers presented honestly (gains AND permanent-tax framing), decision framework applied to stated requirements, middle-path migration suggestion, hidden-requirements checklist items named (global IDs, lag monitoring, re-homing). Interviewers aren’t asking for enthusiasm — they’re checking whether you’d commit their company to the tax for the right reasons. Answer like a steward, not a fan.

My Private Notes

Notes are auto-saved locally to this device.