How do regions and availability zones keep your app alive?

How AWS spreads its infrastructure across the world, and what kind of failure can take your application down.

You have your application running in us-east-1. Everything works. Users log in, the database responds, the logs pile up quietly.

Now imagine that tomorrow a disaster wipes that region off the map. An event so large that nothing is left standing. The uncomfortable question is: does AWS have, somewhere in the world, a copy of your data waiting for you?

No. Nobody backs you up by default.

A lot of people assume it does — that “the cloud” is a cloud, diffuse and everywhere, and that your data floats around all at once. That mistaken belief is exactly the perfect way in, because to understand why the answer is no, you first have to understand how AWS’s infrastructure is physically distributed.

Let’s take it apart, layer by layer.


The region: the isolated container

An AWS Region is a real-world geographic location: an area that groups together a set of data centers. They’re named by combining a geographic area, a direction, and a number: us-east-1 (Northern Virginia), sa-east-1 (São Paulo), eu-central-1 (Frankfurt). As of this writing, AWS operates 39 regions worldwide, and announces new ones every year.

So far this sounds like an administrative detail about where you rent your servers. But there’s a point almost nobody stresses, and it changes everything:

Regions are isolated from one another by design. Nothing crosses from one to another unless you explicitly ask for it.

Your data in us-east-1 does not travel on its own to eu-central-1. Your database is not replicated across the Atlantic just because. That isolation isn’t an oversight: it’s a guarantee. It’s what makes it possible to comply with data residency laws (that your information never leaves a country) and what prevents a problem in one region from contaminating the rest.

And there’s the answer to the question above: if a disaster wipes out your region, your data doesn’t magically appear in another one, because by default you never put it there. The isolation that protects you is the same one that leaves you with no backup if you don’t act.

If the region is the container, the next question is obvious: what’s inside it?


The availability zone: where the myth lives

Inside each region live the Availability Zones (AZs). Every region has a minimum of three, and today they add up to 123 AZs in total spread around the world. They’re identified by the region name plus a letter: us-east-1a, us-east-1b, us-east-1c.

This is where the most common mistake lives, and it’s worth dismantling emphatically:

An AZ is not a single data center. It’s one or more data centers.

Many people picture an AZ as “a building.” It isn’t. In AWS’s own words, it’s “one or more discrete data centers with separate and redundant power infrastructure, networking, and connectivity.” That is: electrical infrastructure, cooling, and networking that are physically independent from each other and from the other AZs. That physical independence is exactly what makes a failure in one AZ — a power cut, a flood, a fire — not drag down its neighbor. When one goes down, the other stays up, with its own power, its own cooling, and its own fiber.

That’s why the basic high-availability recommendation is to run your application across at least two AZs: if one disappears, the other keeps the service alive.

But this raises a natural question: if the goal is for two zones not to share the same disaster, why not put them in different countries, far apart from each other? That’s where the heart of everything lies.


The central trade-off

AWS’s entire architecture is explained by a single tension. If you take away just one idea from this post, let it be this:

AZs have to be far enough apart that a flood, a fire, or a power outage can’t reach both at once. And close enough that the dedicated fiber optics between them deliver single-digit millisecond latency.

Those two requirements pull in opposite directions. Distance versus latency.

Think of it like two twin libraries at a university. If you build them on the same block, a fire takes both: no point in having them duplicated. If you send one to another city, no local disaster will take them both down… but a courier would take hours to carry a book from one to the other, and you can no longer treat them as a single collection.

AWS’s solution is the middle ground, and it even puts a number on it: the AZs are meaningfully distant — up to about 100 km (60 miles) apart to prevent correlated failures — but close enough that light travels between them in fractions of a millisecond. And that proximity enables something critical: synchronous replication. You can write to one AZ and confirm that the data was already copied to the other before responding to the user, without them noticing the delay. Identical copies, in real time, resilient to an entire zone going down.

If they were in different countries, that latency would make synchronous replication unfeasible, and you’d have to choose between slowness or losing data. AWS’s whole design is, at bottom, this balance.


The data center: the layer you don’t decide

Let’s go down one more level. Inside each AZ are the data centers: the real physical buildings, the actual brick and mortar where the servers, disks, and switches truly live.

They exist, they’re the ultimate physical unit, but AWS barely talks about them. Why? Because they aren’t your unit of decision. You never say “I want to deploy in data center number 4.” You design against AZs: you choose regions and distribute across zones. How many buildings sit behind each zone, and how your machines are spread among them, is AWS’s problem.

With this, the full physical hierarchy closes — from the broadest (a geographic area) to the most concrete (a building), passing through the only layer you actually design against: the AZ.

Region  (e.g. us-east-1)

├── Availability Zone A  (us-east-1a)   ← this is what you design against
│     ├── Data center
│     └── Data center

├── Availability Zone B  (us-east-1b)
│     └── Data center

└── Availability Zone C  (us-east-1c)
      ├── Data center
      └── Data center

The network that holds all this together

There’s a question hidden in the trade-off above: that “dedicated fiber” between zones — where exactly does it run?

Not over the public internet. Traffic between your AZs, and also between regions, travels over AWS’s private backbone network: its own fiber, redundant and extremely high-bandwidth, which AWS controls end to end.

This matters for two reasons. First, performance: it’s what makes the balance from the previous section work in practice — the single-digit latency between AZs is only possible over dedicated fiber, not competing with the rest of internet traffic. Second, security: your data between zones doesn’t go out to the public network, doesn’t pass through third-party providers, isn’t exposed to the congestion or eavesdropping of the open internet.

The private backbone is the plumbing that makes everything else possible.



Resource scope: where each thing lives

A quick note before moving on. Not all AWS resources live at the same level of the hierarchy:

  • Some are tied to a specific AZ: for example, an EBS volume. If that zone goes down, the volume does not move on its own to another one.
  • Others are regional in scope: they exist at the level of the whole region, like a DynamoDB table.
  • And others are global, independent of any region: IAM, Route 53, or CloudFront.

Watch out: AZ-scoped resources don’t fail over on their own. If the AZ holding your EBS volume goes down, that volume goes with it — nothing moves it for you.

These examples are enough. Which resource to choose and how to combine them for your architecture is another matter entirely — and another post.


The ladder of failures

We now have all the pieces. Let’s gather what came before to answer the subtitle head-on: what failure can take your application down, and at what level does each layer save you?

Climb it rung by rung:

  1. A data center goes down. The AZ usually holds. Remember that a zone is one or more buildings with redundant power and networking; losing one doesn’t necessarily take the zone down.

  2. A whole AZ goes down. A general power outage, a network failure, a flood, a fire: the entire zone disappears. Here what saves you is being multi-AZ. If your application was also running in the neighboring zone, the service stays up. This is the scenario the whole distance-latency trade-off was designed for.

  3. A whole region goes down. A large-scale geographic disaster, or — far more common — a failure of a regional service that hits every AZ at once. Here multi-AZ no longer reaches you: if the problem is region-wide, both your zones go down together. The only thing that saves you is another region.

Each rung demands a more expensive and more deliberate defense than the one before. And none of them is free or automatic: climbing a rung is always your decision.

The same ladder, at a glance:

FailureWhat usually happensWhat saves you
A data center goes downThe AZ typically holds (redundant power/network)Nothing extra needed
A whole AZ goes downThe zone disappearsMulti-AZ
A whole region goes downEvery AZ is hit at onceAnother region

What the infrastructure does NOT solve for you

And here’s the punchline, the thing that separates this post from the documentation.

Spreading your application across multiple AZs, or even multiple regions, protects you from infrastructure failures. Period. It does not protect you from yourself:

  • A bad deploy ships just as fast to all your zones.
  • An expired certificate expires everywhere simultaneously.
  • An IAM policy you broke is broken across the whole account.
  • A DELETE without a WHERE wipes the table across every replica at once.

Why? Because you apply all of that simultaneously to every zone. Redundancy faithfully copies both your successes and your mistakes. The infrastructure covers infrastructure failures, not your own errors.

This also explains a phenomenon you may have lived through: when us-east-1 has problems, it looks like half the internet goes down. us-east-1 is the oldest and largest region, and where many of AWS’s global control-plane services live. When it shakes, services from thousands of companies shake at once. But notice the detail that reinforces everything we saw: it’s the other regions that hold. If your application lived entirely in another region, regional isolation kept you safe while everyone else scrambled. The isolation we talked about at the start wasn’t theory: it’s precisely what keeps you standing on those days.


So now what?

You now know how AWS physically distributes its infrastructure — region, AZ, data center — why the balance between distance and latency exists, and exactly what each level of the failure ladder protects you against.

The natural next question is the one we left open at the start: if you have to choose where your application lives, which region do you pick? And that’s where four new forces come in: latency toward your users, price, regulation, and service availability.

We take that apart in Part 2: which region do you deploy in?.

Language · Idioma

English Español