5 ms·
Does anyone actually use raft these days
by platz 8y ago
Does anyone actually use raft these days
- jeremyjh 8y agoIs there another distributed consensus algorithm that you think is more prominent? Paxos is on the decline. AFAIK Raft underlies most new distributed systems. Kubernetes for example relies on etcd which is a Raft implementation.
- platz 8y agoAh, I didn't know Paxos was on the decline or that etcd uses raft
- espadrine 8y agoI wouldn't call Paxos on the decline. It has several nice properties that Raft lacks[1]. However, implementing it correctly is more brutal than Raft, which is cut into easier-to-understand components. Also, the paper introducing Paxos[2] is famously obfuscated, while the Raft website[3] trivializes the problem, and has ready-to-use libraries. As a result, there are more recently-developed systems in Raft than Paxos, but I expect there is more volume hitting Paxos systems than Raft ones in the world. [1]: http://rystsov.info/2017/02/15/simple-consensus.html http://rystsov.info/2017/02/15/simple-consensus.html [2]: https://lamport.azurewebsites.net/pubs/lamport-paxos.pdf https://lamport.azurewebsites.net/pubs/lamport-paxos.pdf [3]: https://raft.github.io/ https://raft.github.io/
- evanweaver 8y agoAs a member of a team that has implemented Raft in production (https://fauna.com https://fauna.com) and in conversation with others who have, the general consensus is that Raft, Paxos, and even Viewstamped Replication are variants of the same fundamental algorithm. There is an interesting paper about the commonalities in consensus here: https://arxiv.org/pdf/1309.5671.pdf https://arxiv.org/pdf/1309.5671.pdf
- suj1th 8y agoThank you for sharing an interesting paper. The similarity between Raft and Viewstamped Replication is easy to gauge. The original Raft paper too acknowledges this similarity. OTOH, the similarity between Paxos and Raft is not very apparent (to me). The paper in the link seems to predate Raft, and only considers VR, Zab and multi-Paxos.
- rubiquity 8y ago> Paxos is on the decline You really need to back up a claim like that with facts.
- bjt 8y agoThe Citus team recently created a Postgres extension implementing Paxos. https://www.citusdata.com/blog/2016/04/13/masterless-distributed-queue/ https://www.citusdata.com/blog/2016/04/13/masterless-distrib...
- shanev 8y agoThere’s Tendermint: https://tendermint.com/ https://tendermint.com/, which is gaining popularity in distributed systems projects. It’s Byzantine fault tolerant, unlike Raft and Paxos.
- KirinDave 8y agoI had to get drunk after reading this. No, Tendermint is not useful where Raft is. This is such a crass category error it makes me wonder what your actual skillset is.
- shanev 8y agoCare to enlighten us without resorting to a personal attack Dave?
- notduncansmith 8y agoRaft is not designed for adversarial use; while it is fault-tolerant, it is not Byzantine fault tolerant. Raft (or Paxos et al) are better suited for wholly-owned distributed databases, where a BFT consensus algorithm like Tendermint would usually be inappropriate because of the overhead of cryptographic operations. If you think a large number of your nodes might get hacked, though, you may want a blockchain anyways :)
- KirinDave 8y agoAfter you name a system that decided to switch from a Raft-based consensus implementation to Tendermint, sure.