CAP由以下三个指标组成:
C(Consistency):一致性
A(Availability):可用性
P(Partition tolerance):分区容错
一致性很好理解,就是各分区的数据要保持一致,不能我从A分区查询和从B分区查询到的数据不同
可用性也好理解,就是部分分区崩溃的情况下,服务仍可以使用
分区容错性的意思是,各个分区是分隔的时候,网络通信失败,整个服务还是可以用的
现在困惑的一点是,分区容错性是可以保证分区通信失败的,这种情况下,怎么保证数据一致性的呢?哪位大神能够解答
我暂时的理解是,分区容错性意思是,可以接受短暂网络隔断,而不是一直隔断,如果网络隔断时,要保证一致性,那可用性不满足,不可用
如果要满足CA,那肯定不能接受分区隔断,单机就能满足
如果满足CP,那就需要接受上面说的,部分时间不可用
如果接受AP,那就要接受数据不一致,没办法随时同步