分布式系统CAP

CAP原理分别表示一致性(Consistency), 可用性(Available), 分区(Partition Tolerance)。其中分区是分布式系统避免单点失败的必要手段,所以一般分布式系统都具备P这个属性,而在C和A之前做取舍。CP系统有Zookeeper、etcd等。

分区(Partition Tolerance)

单点失败(网络不通、节点crash等)不会导致整个分布式系统的失败,是分布式系统必不可少的属性。

一致性(Consistency)

同一时刻所有节点对整个分布式系统的 认知 是相同的,即同一时刻分布式系统保持一致。因为要保持一致性,数据获取可能有延迟,因为要等待分布式系统内部的同步。

可用性(Available)

这里的可用性和一般意义上服务器的可用性是不一样的,这里的可用性是非常细粒度的,指数据的可用性。在任意时刻都可以立刻获取到数据,但不一定所有的节点获取到一样的数据,往往以牺牲一致性为前提。

所以我们常见的分布式系统一般有两种,一种是CP,另一种是AP。但是CAP只是对分布式系统的高层次的概括,在分布式系统的实现细节上会有些许差异,并不会严格遵守CAP定理。

参考文章

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。