分布式Erlang和CAP定理

Rud*_*ger 1 erlang distributed-system

根据CAP定理,分布式Erlang系统不可能同时提供以下三种保证:

  • 一致性(所有Erlang运行时或节点,同时查看相同的数据)
  • 可用性(节点故障不会阻止幸存者继续运行)
  • 分区容差(尽管任意消息丢失,系统仍继续运行)

分布式Erlang系统可以支持零个,一个两个保证.

使用Erlang和OTP,如何实现每个保证?大多数分布式Erlang应用程序为更高级别的A和P做出实际选择,并满足"最终一致性".似乎Erlang本身旨在支持分布式(P),容错(A),软实时,不间断的应用程序.

编程语言(Erlang),运行时系统(ERTS)和库集(OTP)是为构建分布式容错应用程序而设计的; 我如何做三个定义分布式容错应用程序的东西?

mik*_*obi 5

为清楚起见,已编辑

这取决于应用程序的设计,而不是您实现它的平台.您可以使用几乎任何语言或平台组合来实现任何2个保证.