Что такое three-phase commit?

Senior
179 просмотров
AFK Offer AI

Three-phase commit (3PC) — улучшение 2PC, которое решает проблему блокировки при сбое координатора. Добавляется промежуточная фаза pre-commit: координатор сначала собирает голоса (prepare), потом шлёт pre-commit (все готовы, скоро будет commit), потом финальный commit. Если координатор упал после pre-commit — участники знают, что все проголосовали YES, и могут завершить транзакцию сами. Но 3PC не работает при сетевых разделениях (может привести к inconsistency) и на практике используется крайне редко. Paxos и Raft решили проблему лучше.

Следующий вопрос

Что такое SRE практики?