Tech Terms Explained Open in the app →

High Availability

Architecture · Intermediate · 4 min read

What is it?

High availability means designing a system so it keeps running with minimal downtime, even when parts of it fail.

Explain like I'm 5

High availability is like a store with several doors and backup generators: if one door jams or the power flickers, customers still get in and the lights stay on.

Why was it created?

Hardware and software inevitably fail. HA design emerged so services stay up despite failures, since downtime costs money and trust.

Where is it used?

  • Critical web services
  • Databases with failover
  • Payment and banking systems
  • Anything with uptime guarantees

Why should developers care?

Reliability targets and HA design are central to running real services, so the concept appears throughout system design and ops.

How does it work?

You remove single points of failure with redundancy: multiple servers, replicas, and zones. Health checks detect failures and traffic automatically shifts to healthy components, so users barely notice.

Real-world example

A database runs a primary plus a standby replica; if the primary fails, the system promotes the standby automatically and service continues.

Common use cases

  • Meeting uptime SLAs
  • Surviving server or zone failure
  • Database failover
  • Always-on customer services

Advantages

  • Less downtime
  • Survives component failures
  • Protects revenue and reputation
  • Smoother user experience

Disadvantages

  • Redundancy costs more
  • Added complexity
  • Failover must be tested or it may not work when needed

When should you use it?

When downtime is costly and the system must keep serving through failures.

When should you avoid it?

For non-critical internal tools where occasional downtime is acceptable and cheaper.

Alternatives

Single-instance setup (cheaper, less resilient)Disaster recovery with longer restore times

Related terms

Load BalancerHorizontal ScalingDistributed SystemsCAP Theorem

Interview questions

Beginner

  • What does high availability mean?
  • What is a single point of failure?

Intermediate

  • What is failover?
  • How does redundancy improve availability?

Senior

  • What does 'five nines' availability imply operationally?
  • How do you test failover safely?

Common misconceptions

  • "High availability means zero downtime" — it means very little downtime; perfection is impractical.
  • "Adding a backup is enough" — failover must be automatic and tested to actually help.

Fun facts

  • Availability is often described in 'nines' — 99.9%, 99.99%, and so on.
  • Each extra nine cuts allowed downtime roughly tenfold.

Timeline

  • 1990s — HA clustering becomes common for critical systems

Learning resources

Quick summary

High availability designs systems with redundancy and automatic failover so they keep running with minimal downtime when parts fail.

Cheat sheet

  • Minimal downtime through redundancy
  • Remove single points of failure
  • Automatic, tested failover
  • Measured in 'nines'

If you remember only one thing

High availability removes single points of failure so the system keeps serving when parts break.