Foundationপ্রথম নীতি থেকে
LEVEL 9 · Distributed Systems

Paxos

প্যাক্সোস

Consensus-এর প্রথম production-grade উত্তর — two-phase ballot protocol; বোঝা কঠিন বলেই Raft-এর জন্ম।

also: multi-paxos, basic-paxos

দুই phase, majority-র উপর:

Phase 1  prepare(n)   → acceptor promise: এর চেয়ে ছোট ballot আর নয়
Phase 2  accept(n, v) → majority accepted ⇒ v decided
  • Safety-র চুক্তি একটাই: এক ballot number-এ এক value; acceptor-কে promise-এর আগে accepted value ফেরত দিতে হয় — proposer তাই সবসময় already-decided value-ই ছড়ায়
  • Acceptor-এর stable storage বাধ্যতামূলক — memory ভুলে গেলে safety ভাঙে
  • Basic Paxos এক value; Multi-Paxos leader stabilize করে phase 1 skip করে log বানায় — আর ওই ‘সংস্কার’-গুলোই implement করা কঠিন, Raft সেই complexity-কে readable করেছে