Зачем вообще нужна строгая консистентность?

В предыдущем блоке мы разобрали Eventual Consistency и поняли, что для ряда систем задержка данных на пару секунд — это окей. Но есть системы, где любая несогласованность — это катастрофа.

Strong Consistency (Строгая консистентность) — это иллюзия того, что у нас всего один сервер, хотя под капотом их могут быть тысячи. Как только операция записи подтверждена, любое последующее чтение из любой точки системы вернет именно эту обновленную версию.

Системы, которым жизненно необходима строгая консистентность

  • Финансы: банковские переводы, торговля на бирже, платежи.
  • Инвентарь: бронирование билетов (чтобы два человека не купили одно место в самолете).
  • Безопасность: отзыв прав доступа (если сотрудника уволили, он должен потерять доступ мгновенно везде).