El algoritmos de 2PC (Two Phase Commit) utiliza coordinadores para realizar el commit, primeramente el coordinador envía a los demás participantes un mensaje para saber si pueden realizar la transacción, los participantes prueban a realizar la transacción y devuelven un mensaje de ok si ven que pueden realizarla o un mensaje de abortar si ven que no pueden realizarla.
Cuando el coordinador tiene todos los mensajes con un ok, es cuando decide realizar la transacción enviándole un mensaje a cada participante para que realice la transacción. En el caso de que uno de los participantes indique que no puede realizar la transacción se abortará la transacción.
Los participantes realizarán la transacción y le enviarán un mensaje de éxito al coordinador, cuando el coordinador reciba todos los mensajes completará la transacción, en el caso de que no reciba todos los mensajes abortará la transacción.
En resumen, este algoritmo realiza un pre-commit en el sistema distribuido y si el pre-commit se ejecuta con éxito, entonces el coordinador de la transacción pide ejecutar el commit al resto de componentes del sistema distribuido.