CAP 理论
cap分别是:consistency(一致性)、availability(可用性)、partition tolerance(分区容错)
在分布式系统中,分区容错是无法避免的,因此认为cap中的p总是成立的,CAP定理说明CA是不能同时成立的。
假如有两台服跨区的服务器G1和G2:
1、如果保证 G2 的一致性,那么 G1 必须在写操作时,锁定 G2 的读操作和写操作。只有数据同步后,才能重新开放读写。锁定期间,G2 不能读写,没有可用性。
2、如果保证 G2 的可用性,那么势必不能锁定 G2,所以一致性不成立。
综上所述,G2 无法同时做到一致性和可用性。系统设计时只能选择一个目标。如果追求一致性,那么无法保证所有节点的可用性;如果追求所有节点的可用性,那就没法做到一致性。
评论