liveBook · Manning

Distributed system

As explained in Real-World Cryptography

A distributed system is a set of independent computing components that coordinate over a network to provide a shared service or state.

A distributed system spreads service or state across independent components so one failed server does not take everything down. Replication across locations provides high availability, but replicas may temporarily disagree. section 12.1.1

A practical distributed database commonly uses:

  • A leader that orders writes and updates. section 12.1.1
  • Other replicas that serve reads and catch up after replication lag. section 12.1.1
  • Eventual consistency, accepting temporary differences while replicas converge. section 12.1.1

When replicas disagree

One server reports that Alice owns 5 billion dollars while another returns a different balance or history. That contradictory state is a fork. Faults, network partitions, crashes, or compromised servers can create this problem; Byzantine fault-tolerant consensus aims to prevent it. section 12.1.2

Use the figure as a visual aid for replicated databases, leader-based writes, and distributed reads. section 12.1.1

How Real-World Cryptography covers it

How deep it goes
Explains replication, leaders, lag, eventual consistency, forks, and Byzantine faults, but stops short of protocol implementation details.
Examples
Uses geographically distributed database replicas, leader-based writes, differing account balances, and contradictory histories as examples.
What you can do after
Evaluate replication designs by weighing availability, write conflicts, lag, consistency, crashes, partitions, and compromised servers.
How it connects
Connects high availability, replication, eventual consistency, network partitions, consensus algorithms, and Byzantine fault tolerance.

Also explained in

Compare how 15 books explain distributed system →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Real-World Cryptography. The section links point to the parts of the book it draws on.