Active-Active
/ˈæk.tɪv ˈæk.tɪv/ · Adjective · Development · Origin: 1995
Definitions
Active-Active is a high-availability architecture pattern where two or more servers or data centers simultaneously handle production traffic, as opposed to active-passive where standby nodes only take over during failures. Each node in an active-active configuration processes requests independently, and a load balancer distributes traffic among them. This design maximizes resource utilization since no hardware sits idle waiting for a failover event. It also reduces latency by routing users to the geographically closest node. The primary challenge is data consistency, as concurrent writes to multiple nodes require conflict resolution strategies such as last-write-wins, vector clocks, or CRDTs. Active-active is commonly used for databases (like CockroachDB and Cassandra), DNS configurations, and multi-region cloud deployments where both high availability and disaster recovery are critical requirements.
In plain English: Instead of having a backup server sitting idle waiting for something to break, both servers are doing real work at the same time. If one dies, the other is already warmed up and ready.
Example: "We run active-active across us-east-1 and us-west-2 — if an entire AWS region goes down, the other region picks up all traffic automatically."
Etymology
- 1970s
- Tandem Computers builds NonStop systems, pioneering active-active high availability in production environments.
- 1995
- Oracle Real Application Clusters (RAC) brings active-active database architecture to mainstream enterprise use.
- 2000s
- Active-active becomes a standard pattern for web-scale architectures, with load balancers distributing traffic across live nodes.
- 2010s
- Cloud providers offer multi-region active-active deployments, making the pattern accessible without specialized hardware.
Origin Story
The Architecture Where Nothing Sits Idle
Active-active refers to a system architecture where multiple nodes or data centers simultaneously handle live traffic, with no idle standby. The concept emerged in the mid-1990s from the high-availability clustering world, where engineers at companies like Tandem (now part of HP) and Oracle designed systems that could survive hardware failures without downtime. In the earlier 'active-passive' model, a backup server sat idle, waiting to take over if the primary failed. This was wasteful and slow: failover could take minutes, and the passive node contributed nothing during normal operation. Active-active changed that equation by distributing load across all nodes simultaneously. If one node failed, the others absorbed its traffic without any switchover delay. The term gained prominence in the enterprise database world, particularly with Oracle Real Application Clusters (RAC) introduced in 2001, which allowed multiple database instances to read and write to the same data concurrently. Today, active-active is a cornerstone of cloud architecture. Global services like Netflix, Google, and Amazon run active-active across multiple geographic regions, ensuring that users are served by the nearest healthy data center and that no single regional failure takes down the service.
Context: High-availability clustering, mid-1990s
Fun fact: Tandem Computers, a pioneer of active-active systems, was so obsessed with uptime that its marketing slogan was 'NonStop,' and the company guaranteed 99.999% availability (about five minutes of downtime per year).