One zone vs two zones

Two servers in one zone fail together when the zone fails. Servers in two zones keep working when one zone is lost. At 1,200 orders/s, a zone A failure at 0:40 leaves 26.7 percent availability with both servers in zone A. With one server in each zone, availability is 99.4 percent for 4 USD/mo more.

Play the level

Failure domains on the floorTap for the next fault. Arrow keys move the replicas.

Two rows · 3 of 3 replicas up · load served

Case 1

1,200 orders/s. Zone A fails at 0:40 and stays down. The balancer and the managed database span both zones. Availability must stay above 97.5 percent and p99 below 150 ms.

Case 1
Measure Goal Both servers in zone A One server in each zone
Availability at least 97.5% 26.7% Fail 99.368% Pass
p99 latency under 150 ms 30 ms Pass 34 ms Pass
Monthly cost 44 USD/mo 48 USD/mo
Error rate 73.3% 0.6%
RegionZoneZoneHTTP/2HTTP/2SQLSQLUsersLoad balanc…1 vCPU · 1 GBNode API1 vCPU · 1 GBNode API1 vCPU · 1 GBPostgres2 vCPU · 4 GB × 2
RegionZoneZoneUsersLoad ba…Node APINode APIPostgres
Both servers in zone A: misses a goal
RegionZoneZoneHTTP/2SQLHTTP/2SQLUsersLoad balanc…1 vCPU · 1 GBPostgres2 vCPU · 4 GB × 2Node API1.5 vCPU · 1 GBNode API1.5 vCPU · 1 GB
RegionZoneZoneHTTP/2UsersLoad ba…PostgresNode APINode API
One server in each zone: meets the goals