Изменения

Перейти к: навигация, поиск

2 Phase Commit

1163 байта добавлено, 20:51, 3 июня 2019
Ограничения
== Ограничения ==
Так как это алгоритм консенсуса, к нему применима [[Теорема Фишера-Линча-Патерсона (FLP)|FLP]].
 
Если у нас есть отказы узлов или связи, то 2PC будет ждать, пока связь не восстановится:
* Если отказ произошёл на первой фазе, то координатор может отменить транзакцию по таймауту.
* Если узел отказал, а потом восстановился, то он спрашивает координатора, какое решение было принято. Если "да", то обязан закрепить транзакцию (т.е. координатор должен хранить все подтверждённые транзакции, которые подтвердили не все узлы).
* Если отказал координатор, то, если узел ответил "да", он не имеет права забить на транзакцию, пока координатор не восстановится.
292
правки

Навигация