分布式系统之 cap 理论

用户头像
阿飞
关注
发布于: 2020 年 07 月 15 日

cap理论是指:一个分布式系统不可能同时满足以下三种



  • 一致性(C:Consistency)每次写数据涉及多个副本的写,是否能够保持保证数据正确一致

  • 可用性(A:Available) 每一次操作请求必须在有限时间内返回结果 强调服务的性能和高可用



  • 分区容错性(P:Partition Tolerance)强调的是网络不通的时候,还可以保证在写数据过程中如何保证多个节点的数据一致性(C),并且可用(A)



只要是分布式系统,P这个客观条件就一定存在,问题就在P存在(多个节点)的情况下,不能两全其美,又高可用又能保证数据的一致。实际上只能保证CP或AP。



CP : 如Zookeeper 在出现网络问题重新选举的时候整个集群是不可用的,它所提供的是顺序一致,所以 Zookeeper保证的是CP



AP : 如Elasticsearch集群采用主副分片的方式存储数据,一旦主分片丢失,副本分片可以晋升成为主分片提供可用服务。但是ES集群在写入索引数据后会有1s的延迟(不能实时返回正确数据),并且分页查询也不能保证数据的正确。



发布于: 2020 年 07 月 15 日 阅读数: 36
用户头像

阿飞

关注

还未添加个人签名 2017.12.12 加入

还未添加个人简介

评论

发布
暂无评论
分布式系统之cap理论