理论篇(二) 分布式架构/微服务中CAP于BASE理论

CAP理论

在分布式系统中最多只能够满足一致性(Consistency),可用性(Availbaility)和分区容错性这三者之中的其中两种

  1. 一致性(Consistency):在数据更新后,所有的节点数据同一时间完全同步。比如MySql的事物
  2. 可用性(Availbaility):服务一直可以用,且处于正常响应时间
  3. 分区容错性(Partition tolerance):分布式系统在某个节点故障的时候,任然可以保证对外提供可满足一致性和可用性的服务

如下图所示,用户在经过CDN网络分配的时候会根据用户的位置选择最近的服务器IP地址,所谓一致性就是为了保障A机房的数据可以在同一时间和B机房同步,而可用性可小大,小的就是我只有一个机房,但是里面会有多个同业务服务,挂了一个还有下面的顶上去,大到多个机房,一个机房挂了还有下个机房顶

CAP权衡

而常用的分为CP和AP两种系统模式

  1. CP适用场景如金融系统(与钱或者其他敏感的事物)
  2. AP则只要保证服务可以使用就行了

BASE理论

在CAP理论上的延伸,核心思想就是即使无法达到强一致性(CAP的一致性就是强一致性),但是可以使用适合的方法达到最终一致性

  1. 基本可用性(Bacsically Availble):就是舍车保帅,指的是在分布式系统遇到故障的时候可以舍弃一部分服务,保证其核心服务即可
  2. 软状态(Soft State):指的是允许系统之间存在中间状态,就是在两个或者多个服务之间可以不需要在同一时间数据同步(强一致性),可以存在个什么几秒的时间差存在。分布式存储中一般一份数据会有至少是哪个副本,允许不同节点之间副本同步的延时就是软状态的体现。
  3. 最终一致性(Eventual Consistency):系统中的所有数据副本经过一定时间后,最终达到的一致状态。弱一致性和强一致性相反,最终一致性则是弱一致性的一种特殊状态

异地多活

不过在这里有一个新的概念就是分布式ID。分布式ID解决了数据备份是ID冲突的问题。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值