每轮后随机选择领导者

时间:2018-12-27 09:40:51

标签: algorithm distributed-computing leader-election

我正在一个系统上,我需要随机选择一个领导者(从n个节点中选择)。领导者将在每一轮之后(当前领导者完成其任务之后)进行更换。所有节点将彼此通信。

补选将在两个条件下进行:

  1. 回合结束。
  2. 领袖过早去世。

此想法是否有任何实现可供参考。这样做是个好主意吗?为什么?应该以不同的方式对待这种情况吗?

1 个答案:

答案 0 :(得分:0)

据我所知,您需要从节点中选择一个不同的领导者。每次这样做,您都可以将所有节点放入队列中,然后找到队列的长度,并生成一个从0到0的随机数。队列的长度,并在他去世或完成工作时将此索引处的节点命名为领导者,您可以从队列中删除该节点,并通过相同的过程重新选举领导者。现在,该长度减少了1。 希望我正确理解了这个问题。