SYSTEM ATLASЗагрузка материала

Двухфазная фиксация 2PC

Two-Phase Commit (2PC)

Координатор сначала готовит участников, затем подтверждает общую транзакцию.

Простыми словами

Представьте сделку между несколькими отделами: сначала каждый подтверждает готовность, затем координатор всем говорит окончательно выполнить или отменить. 2PC делает распределённую фиксацию согласованной, но при проблеме координатора участники могут долго ждать решения.

Механизм действия

Сначала проверяют, есть ли исходное условие из определения. Затем смотрят, как оно влияет на структуру компонентов, потоки данных, ограничения и действия участников. Если эту связь не удаётся наблюдать, принцип не стоит использовать как готовое объяснение.

Пример в работе

Нерабочий подход

Применять локальное решение без проверки контекста, ограничений и вторичных последствий.

Системный подход

Сначала определить механизм, затем выбрать минимальное изменение и измерить результат.

Ограничения

«Двухфазная фиксация 2PC» объясняет только часть происходящего в области «Базы данных и данные». Сам принцип не говорит, насколько сильным будет эффект в вашем случае, и не заменяет измерения. При другом масштабе, среде или временном горизонте результат может отличаться.

Источник

Jim Gray. Notes on Data Base Operating Systems. 1978. DOI 10.1007/3-540-08755-9_9.

Первоисточник