CPA理论
CPA是计算机分布式系统的三个核心特性:
一致性:指多个节点上的数据副本必须一致
可用性:系统必须在任何时候都能够响应客户端请求
分区容错性:系统必须能够容忍分布式系统中的某个节点或者网络分区出现故障或者延迟
由于在分布式系统中,分区问题无法避免,因此只能最求AP和CP组合:
AP:放弃一致性,追求更好的可用性
CP:放弃可用性,追求数据一致性
BASE理论
base理论是对CAP理论中一致性和可用性的权衡策略,其核心思想是,即使无法做到强制一致性,但可以根据业务特点,采取适当的方式使得系统达到最终一致性。
基本可用:当系统出现故障,运行牺牲一定程度的用户体验,但绝不运行系统完全不可用。
软状态:运行系统中的数据存在中间状态,并认为该状态不影响系统的整体可用性。
最终一致:软状态允许数据备份延迟,但最终这些数据要保证一致性。