CAP理论

C是一致性

A是可用性

P是分区容忍性。当分区发生时,系统仍然能提高服务。

P理论上一定会发生的。因为网络时无法保证100%不出问题的。

所以理论上只有CP、AP两种选择。

1、CAP是理论,是忽略时延的。同机房几毫秒,异地机房几十毫秒。

理论上无法做到,单一金额的分布式部署。但通过用户ID的hash分区,可实现整个系统的分布式部署。这样当发生故障,只是部分节点发生故障,提供系统可用性。

2、CAP是数据粒度的一致性,而不是整个系统的整体逻辑。例:用户核心数据和用户扩展数据(年龄,爱好),用户核心数据应该做的CP,用户扩展数据应该做到AP。

3、保证CP,AP不意味着忽略的那个A,C什么都不做。可设计为分区恢复后做准备。分区发生,保证C,造成一部分访问返回正确,一部分访问返回错误的情况。可以记录日志,当状态好的时候,同步到另外的分区。

4、现实中,P出现的概率很低,因此可以设计实现CA的系统。但不同数据实现方式不一样。例如用户核心数据,利用消息队列的方式实现一致性,实时性好,实现比较复杂。用户扩展数据,利用数据库自身同步机制实现同步。

BASE ,即使无法实现强一致性,也可以用适当的方式,实现最终一致性。

1、基本可用,当问题发生时,保证核心数据可用。

2、软状态,及最终一致性的中间状态。

3、无法实现强一致性,可实现最终一致性。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值