浅谈分布式——CAP定理 && BASE理论

文章目录

  • 前言
  • 一、CAP定理
    • 一致性(C:consistency)
    • 可用性(A:Availability)
    • 分区容错性(P:Partition tolerance)
  • 二、BASE理论
    • 基本可用
    • 弱状态
    • 最终一致性


前言

提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、CAP定理

一个分布式吸用不可能同时满足一致性(C:consistency)、可用性(A:Avaliability)和分区容错性(P:Partition tolerance)三个基本要素,最多只能同能同时满足其中两项

一致性(C:consistency)

在分布式环境中,一致性是指数据在多个副本之间是否能够保持一致的特性,在一致性的需求下,当一个系统在数据一致的状态下执行更新操作后,应该保证系统的数据仍然保持一致的状态。

在分布式系统中,如果能够做到针对一个数据项的更新操作执行成功后,所有的用户都可以读取到其最新的值,这样的系统就被认为具有强一致性。

可用性(A:Availability)

可用性指系统提供的服务必须一直处于可用的状态,对于用户的每一个操作请求总是能够在有限的时间内返回结果。

有限的时间内: 系统必须能够在指定的时间内返回对应的处理结果,如果超过了这个时间范围,那就被认为不可用

返回结果: 面对用户请求的处理,返回一个正常响应结果。

分区容错性(P:Partition tolerance)

分布式系统在遇到任何网络分区故障的时候,仍然需要能够保证对外提供满足一致性和可用性的服务,除非整个网络环境都发生了故障

网络分区指分布式系统中,不同的节点分布在不同的子网络,由于一些特殊的原因导致这些子网络之间出现了网络不联通的状况,导致整个系统网络环境被切分了若干个孤立的区域。

分布式系统中的组件必然需要被部署到不用的节点,否咋也就无所谓分布式系统了,因此必然出现子网络。对于分布式系统而言,网络问题又是一个必定会出现异常的问题,分区容错性也就成了一个分布式系统必然需面对和解决的问题。因此往往需要把精力花在如何更具业务特点一致性可用性之间寻求平衡

二、BASE理论

BASE是 Basically Availiable (基本可用),Soft state(软状态)和Eventually consistenet(最终一致性)三个缩写。

基本可用

  1. 响应时间上的损失

    出现故障,响应结果增加一些时间

  2. 功能上的损失

    为了保护系统的稳定性,消费被引导降级

弱状态

也称为软状态,允许系统中的数据存在中间状态,并认为该状态的存在不会影响系统的整体可用性,即允许系统在不用节点的数据副本之间进行数据同步的过程存在延时。

最终一致性

系统中所有的数据副本,经过一段时间同步后,最终能达到一个一致的状态,因此,最用一致性的本质是需要徐同保证最终数据能够达到一致性,而不需要实时保证数据的强一致性

BASE理论面向的是大型高可用可扩展的分布式系统,和传统食物的ACID特性是相反的,它完全不同于ACID的强一致性模型,而是提出通过牺牲强一致性来获得可用性,并允许数据在一段时间内是不一致的,但最终到达一致状态。

你可能感兴趣的:(分布式,分布式)