Michael L Perry

What Two Generals Can Teach Us about Web APIs

The Two Generals problem is a thought experiment about achieving atomic consistency through unreliable communication. The problem as stated is…

The Two Generals problem is a thought experiment about achieving atomic consistency through unreliable communication. The problem as stated is impossible.....


But a couple of simplifying assumptions turn the problem into something tractable. When we look closely at these simplifying assumptions, we recognize it as relaxing Atomic Consistency to Eventual Consistency. We need two mathematical properties to achieve this goal:

  1. Idempotence
  2. Commutivity

The traditional way of thinking about Web APIs and REST verbs does not give us these two properties. I demonstrate how to design a Web API that provides stronger guarantees than the ones that REST demands.


Recorded at Houston TechFest 2018

Michael Perry

You may also like