Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Automatic selection of a leader in a cluster of nodes

What are the best methods/algorithms available to select a leading node in a cluster of nodes, knowing that nodes come up and down at anytime? If implementations are available in Java, it is a plus.

like image 847
Jérôme Verstrynge Avatar asked Apr 28 '11 20:04

Jérôme Verstrynge


1 Answers

I've implemented the Paxos algorith before in Java. It's very useful, and fairly simple. (It took about 16 hours to put together a demo of it, using Threads to simulate servers. I was also much worse at threading then!)

It won't help you select the leader exactly... but what it will do is allow the various nodes to agree on a leader. So you have this leader selection algorithm, but because each node is going to pick it's own node to lead, you may find a "civil war" among your nodes. The Paxos algorithm allows you to say which picked leader is the real leader.

http://en.wikipedia.org/wiki/Paxos_%28computer_science%29

like image 133
corsiKa Avatar answered Sep 28 '22 07:09

corsiKa