{
    "content": "<h1><a href=\"..\/Paxos-Algorithm\/\">Paxos-Algorithm<\/a><\/h1><p>The <a href=\"..\/Paxos-Algorithm\/\">Paxos-Algorithm<\/a> is a foundational protocol used to achieve <a href=\"..\/Consensus\/\">Consensus<\/a> in a <a href=\"..\/Distributed-System\/\">Distributed-System<\/a>. It was famously introduced by <a href=\"..\/Leslie-Lamport\/\">Leslie-Lamport<\/a> to ensure that a group of processors can agree on a single value even if some nodes or network links fail. The algorithm is the theoretical basis for many modern distributed databases and coordination services.<\/p><p>The protocol operates through three distinct roles: <a href=\"..\/Proposers\/\">Proposers<\/a>, <a href=\"..\/Acceptors\/\">Acceptors<\/a>, and <a href=\"..\/Learners\/\">Learners<\/a>. The execution is typically divided into two main phases. In the <a href=\"..\/Prepare-Phase\/\">Prepare-Phase<\/a>, a <a href=\"..\/Proposer\/\">Proposer<\/a> sends a unique proposal number to a majority of <a href=\"..\/Acceptors\/\">Acceptors<\/a>. If the number is the highest seen, the <a href=\"..\/Acceptors\/\">Acceptors<\/a> promise to reject lower-numbered proposals. In the <a href=\"..\/Accept-Phase\/\">Accept-Phase<\/a>, the <a href=\"..\/Proposer\/\">Proposer<\/a> requests that the <a href=\"..\/Acceptors\/\">Acceptors<\/a> accept a specific value. Once a <a href=\"..\/Quorum\/\">Quorum<\/a> of <a href=\"..\/Acceptors\/\">Acceptors<\/a> accepts the value, it becomes the chosen result.<\/p><p>Real-world implementations of the <a href=\"..\/Paxos-Algorithm\/\">Paxos-Algorithm<\/a> are found in high-availability systems such as <a href=\"..\/Google-Chubby\/\">Google-Chubby<\/a> and <a href=\"..\/Apache-ZooKeeper\/\">Apache-ZooKeeper<\/a>. While often considered difficult to implement, it remains a gold standard for <a href=\"..\/Fault-Tolerance\/\">Fault-Tolerance<\/a> and <a href=\"..\/State-Machine-Replication\/\">State-Machine-Replication<\/a>. For more technical depth, see the <a href=\"https:\/\/lamport.azurewebsites.net\/pubs\/paxos-simple.pdf\">original paper by Leslie Lamport<\/a> or the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Paxos_(computer_science)\">Wikipedia overview of Paxos<\/a>.<\/p><ul><li><a href=\"..\/Raft-Consensus-Algorithm\/\">Raft-Consensus-Algorithm<\/a><\/li><li><a href=\"..\/Byzantine-Fault-Tolerance\/\">Byzantine-Fault-Tolerance<\/a><\/li><li><a href=\"..\/Distributed-Computing\/\">Distributed-Computing<\/a><\/li><li><a href=\"..\/Consistency-Models\/\">Consistency-Models<\/a><\/li><\/ul>",
    "tags": [
        "paxos",
        "consensus",
        "distributed-systems",
        "leslie-lamport",
        "algorithms",
        "fault-tolerance",
        "state-machine-replication",
        "distributed-computing",
        "concurrency",
        "distributed-databases"
    ]
}