3 ms·
You can have a leader and still be fault tolerant... At any rate, if the leader dies another member of the cluster is elected and operations proceed. Yes, it's
by allengeorge 11y ago
You can have a leader and still be fault tolerant...
At any rate, if the leader dies another member of the cluster is elected and operations proceed. Yes, it's not "always available", but that's the trade-off you make when you impose strong consistency.
- pkolaczk 11y ago"Not always available" means "not fault tolerant" to me. You can have strong consistency with no leader and no temporary SPOF with Egalitarian Paxos. And even with standard Paxos/Raft it is possible to architect the system to not have a single leader, but multiple leaders responsible for different partitions of data.
- allengeorge 11y agoEven if you had multiple leaders responsible for different partitions you'd still be (temporarily) unavailable if the leader died, so...while you have improved the system's availability characteristics you haven't changed the underlying fault model. Also, keep in mind that not everything has to go through the leader. If your application is OK with stale reads you can read committed data from any follower, allowing you to be available (for some definition of available) while the master is down. Also, IIRC most practical strongly-consistent systems aren't egalitarian (I'd love to hear otherwise) and instead, rely on a leader.