定理内容

FLP不可能定理是分布式系统理论中最基础、最重要,同时也是最著名的定理之一。它是由 Fischer, Lynch 和 Paterson 于 1985 年在著名的论文 《Impossibility of Distributed Consensus with One Faulty Process》 提出。

这篇论文证明一个重要结论:

在完全异步的模型下,即使只允许一个进程失败,也没有任何算法能够保证达成共识。

——FLP不可能性定理

启示

在FLP定理之前,我们还不知道能不能设计出在完全异步模型下既能容错,又能在有限时间内达成共识的完美算法。FLP定理的出现给这一争论画上了句号。

它警示我们:不要再浪费时间,试图设计一个既能容错,又适用于任何场景的分布式共识算法。

但是我们没有必要感到绝望,因为很多东西都是鱼与熊掌不可兼得,想要实现工程上的可用性我们就必须要舍弃某些东西。

毕竟科学通常关注绝对正确,而工程则关注于相对可用。科学上不可能,但工程上如果算法的可用性足够高,例如达到99.999%,实际上也是可以接受的。