<story><title>Paxos vs. Raft: Have we reached consensus on distributed consensus?</title><url>http://charap.co/reading-group-paxos-vs-raft-have-we-reached-consensus-on-distributed-consensus/</url></story><parent_chain></parent_chain><comment><author>josh2600</author><text>Ok so having worked on distributed consensus a bunch here are a couple thoughts in no particular order:&lt;p&gt;* In the real world, servers misbehave, like, a lot, so you have to deal with that fact. All assumptions about network robustness in particular will be proven wrong on a long enough timeline.&lt;p&gt;* Leader election in a world without a robust network is an exercise in managing acceptable failure tolerances. Every application has a notion of acceptable failure rates or acceptable downtime. Discovering that is a non-trivial effort.&lt;p&gt;Jeff Dean and others at Google famously came to the conclusion that it was ok for some parts of the Gmail service to be down for limited periods of time. Accepting that all self-healing&amp;#x2F;robust systems will eventually degrade and have to be restored is the first step in building something manageable. The AXD301 is the most robust system ever built by humans to my knowledge (I think it did 20 years of uptime in production). Most other systems will fail long before that. Managing systems as they fail is an art, particularly as all systems operate in a degraded state.&lt;p&gt;In short, in a lab environment networks function really well. In the real world, it&amp;#x27;s a jungle. Plan accordingly.</text></comment>
<story><title>Paxos vs. Raft: Have we reached consensus on distributed consensus?</title><url>http://charap.co/reading-group-paxos-vs-raft-have-we-reached-consensus-on-distributed-consensus/</url></story><parent_chain></parent_chain><comment><author>benlivengood</author><text>Since the article mentions Google as the outlier preferring Paxos, I may be able to shed some light from a few years ago.&lt;p&gt;The Paxos, paxosdb, and related libraries (despite the name, all are multi-paxos) are solid and integrated directly into a number of products (Borg, Chubby, CFS, Spanner, etc.).  There are years of engineering effort and unit tests behind the core Paxos library and so it makes sense to keep using and improving it instead of going off to Raft.  As far as I am aware the Google Paxos implementation predates Raft by quite a while.&lt;p&gt;I think in general if most other people use Raft it&amp;#x27;s better for the community to have single, stable, and well-tested shared implementations for much the same reason it&amp;#x27;s good for Google to stick with Paxos.</text></comment>