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

Трехфазная фиксация 3PC

Three-Phase Commit (3PC)

Добавляет промежуточное состояние для уменьшения неопределенности при отказе координатора.

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

Представьте, что между «готов» и окончательным решением добавляют ещё один согласованный этап, чтобы участники лучше понимали состояние сделки. 3PC пытается уменьшить блокировку 2PC, но требует сильных предположений о сети и редко является универсальным решением.

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

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

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

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

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

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

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

Ограничения

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

Источник

Dale Skeen. Nonblocking Commit Protocols. 1981. DOI 10.1145/582318.582339.

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