经典CAP图数据库
分布式系统的CAP理论:理论首先把分布式系统中的三个特性进行了以下概括:网络
●一致性(C):在分布式系统中的全部数据备份,在同一时刻是否一样的值。(等同于全部节点访问同一份最新的数据副本)分布式
● 可用性(A):在集群中一部分节点故障后,集群总体是否还能响应客户端的读写请求。(对数据更新具有高可用性)性能
●分区容错性(P):以实际效果而言,分区至关于对通讯的时限要求。系统若是不能在时限内达成数据一致性,就意味着发生了分区的状况,必须就当前操做在C和A之间作出选择。spa
如今的分布式系统只能取其二。blog
CAP理论的核心是:集群
一个分布式系统不可能同时很好的知足一致性、可用性和分区容错性这三个需求,所以,根据CAP原理将NoSQL数据库分红了知足CA原则、知足CP原则和知足AP原则三大类:原理
CA – 单点集群,知足一致性、可用性的系统,一般在可扩展性上不太强大;扩展
CP – 知足一致性、分区容错性的系统,一般性能不是特别的高;高可用
AP – 知足可用性、分区容错性的系统,一般可能对一致性要求低一点;
CAP的3进2:
CAP理论就是说在分布式存储系统中,最多只能实现上面的两点。而因为当前的网络硬件确定会出现延迟丢包等问题。因此,分区容错性使咱们必须须要实现的。因此咱们只能在一致性和可用性之间进行权衡,没有NoSQL系统能够能同时保证这三点。
Zookeeper保证的是CP;
Eureka保证的是AP;
Eureka相比于Zookeeper的优点:
Eureka能够很好的应对因网络故障致使部分节点失去联系的状况,而不会像Zookeeper那样使整个注册服务瘫痪。