O Que É Two-Phase Commit?
O two-phase commit é um protocolo distribuído em que um coordenador primeiro pede a cada participante que se prepare e vote se pode fazer commit, e então, em uma segunda fase, diz a todos que façam commit ou que todos abortem com base nos votos. Ele garante que os participantes cheguem ao mesmo resultado. O trade-off é que os participantes precisam manter locks enquanto aguardam, e uma falha do coordenador pode deixá-los bloqueados.
Por que isso importa
O two-phase commit fornece atomicidade entre bancos de dados ou serviços separados, mas sua natureza bloqueante e a dependência do coordenador o tornam pesado. Muitos sistemas preferem sagas ou consistência eventual para evitar esse custo.
Guias relacionados
What Is a Distributed Transaction?A distributed transaction spans multiple databases or services and must either commit everywhere or roll back…
What Is the Saga Pattern?The saga pattern manages a long-running business process across services as a sequence of local transactions,…
What Is a Transaction Isolation Level?An isolation level sets how much one transaction can see of others in progress, trading consistency guarantee…