Two-Phase Commit
Le commit en deux phases (2PC) est le protocole de validation atomique des transactions entre nœuds : le coordinateur demande d'abord à tous les participants s'il faut valider, puis décide commit ou abort.
Objectif
Réaliser l'atomicité des transactions distribuées et comprendre ses problèmes de blocage et de point unique du coordinateur.
Mécanisme
Phase un (prepare) : le coordinateur envoie prepare ; les participants écrivent le WAL et répondent yes/no. Phase deux (commit/abort) : commit si tous disent yes, sinon abort. Si le coordinateur plante, les participants bloquent (incertain).
Cas d’usage
- Conception de transactions distribuées
- Validation atomique entre nœuds
- Protocole XA