IT-lexikon › Databas › 2PC

2PC

Databas In English → Uppdaterad: 2026-05-27

Two-Phase Commit — klassisk distribuerad-commit-protokoll. Fas 1: coordinator skickar PREPARE till alla participants, alla svarar Yes/No. Fas 2: om alla Yes → COMMIT till alla; om någon No → ABORT till alla.

Garanterar atomicity över flera participants. Stora problem: blocking-protocol — om coordinator dör efter PREPARE men före COMMIT, participants är stuck (locks held). Recovery kräver coordinator-recovery + komplex protocol. Performance: 2 network-roundtrips per commit + fsync per fas. Modern alternativ: 3PC (Three-Phase Commit, adresserar blocking men accepterar lägre availability), Paxos/Raft (consensus-baserad), Saga (no atomicity, kompensera istället). Distributed-DB (Spanner, CockroachDB) använder optimized-2PC internally.

← Tillbaka till lexikonet