Piotr Grzesik
Reaching an agreement between processes and proposed values.
Consensus is fundamental for solving problems like leader election, commiting a transaction to database or performing clock synchronisation.
Simple approach to solving consensus problem. Constitutes of two distinct phases: Propose and Commit/abort
https://en.wikipedia.org/wiki/Three-phase_commit_protocol#/media/File:Three-phase_commit_diagram.png