我是分布式系统的新手,我目前正在研究Nancy lynch的书中的分布式算法。现在,在完成有关领导者选举问题和学习算法(如LCR,HS等)的部分后,我想到了一个问题:如果UID不是正整数怎么办?在我阅读的所有章节中,UID基本上都是正整数。当我考虑对这种算法进行编码时,我却想到了要进行比较的对象。例如,在编程中,我们可能有不同的对象(例如苹果和橘子!)。所以问题可能是这样的:例如,如果A,B,C ...是节点的UID,我该如何选出领导者?
我的主要问题之一是我们不能简单地比较对象!就像我们可以说A==A
,但没有办法说A>B or A<B
(就像说苹果比橙色大吗?)
提前感谢
对于对象,您可以选择一种任意方式进行比较。比较有很多选择,但是如果每个人都同意使用哪种比较,那么它就可以工作。
例如,您可以决定按重量比较水果。现在,任何给定的苹果都可以与任何给定的橙子进行比较。并且该算法有效。