假设我要设计一个分布式系统,其唯一目的是为每个正在运行的节点分配一个较小范围内的唯一标识符(例如,将5-100个节点转换为10位标识符)。添加节点后,它应获得未使用的标识符。我们需要支持添加然后删除的1024个以上的节点,因此当然需要用于释放标识符的系统。
从最初的原理出发,将使用什么技术来实现这样的系统?如何将新节点添加到系统并了解其他节点?当节点崩溃时如何保证没有两个正在运行的节点具有相同的标识符,如何释放标识符?是否可以使这样的系统具有容错能力?
是否有某种方法可以测试必须查看的想法在故障等情况下是否真正起作用?