• 从Paxos到Zookeeper分布式一致性原理与实践 读书笔记之(一) 分布式架构


    1.1 从集中式到分布式

     1 集中式特点

     结构简单,无需考虑对多个节点的部署和节点之间的协作。

     2  分布式特点

    分不性:在时间可空间上随意分布,机器的分布情况随时变动

    对等性:计算机之间没有主从之分,所有计算机之间是对等的。副本是分布式系统对数据和服务提供的一种冗余手段。

    数据副本,是指在不同的节点上持久化同一份数据,只是解决分布式系统数据丢失的最有效手段。

    服务副本,多个节点提供同样的服务,每个节点有能力接受外部的请求并进行处理。

    并发性

    缺乏全局时钟:很难定义两个事件的顺序谁先谁后,原因是缺乏全局时钟序列控制。

    故障总是会发生:组成分布式系统的所有计算机随时可能发生各种形式的故障。

     3 分布式环境各种问题

      通信异常

    网络分区:当网络发生异常,系统中部分节点之间网络延时不断增大,最终导致只有部分节点能够通信,另一些节点不能。这一现象叫网络分区,或者“脑裂”。

    三态:失败、成功与超时。

            节点故障:组成分布式系统的节点宕机或者“僵尸”,每个节点都会发生,每天都在发生。

    1.2从ACID到CAP/BASE 

     1 ACID

    原子性

    全部成功执行

    全部不执行

    一致性

    隔离性

    未授权读取

    授权读取

    可重复读:事务处理过程中,多次读取数据是一致的。

    串行化:所有事务被串行执行,是最严重的事务隔离级别。

    隔离级别脏读(Dirty Read)不可重复读(NonRepeatable Read)幻读(Phantom Read)
    未授权读取 (Read uncommitted)
    可能可能可能
    授权读取(Read committed)
    不可能可能可能
    可重复读(Repeatable read)不可能不可能可能
    串行化(Serializable )不可能不可能不可能

    级别越高,数据越安全,但性能越低。(不可重复读针对的是读取过程中其他线程对数据 update或delete,幻读针对insert进去符合条件的数据。)

    持久性:指一个事务提交,它对数据的修改是永久性的。

     2 分布式事务

     3 CAP和BASE理论 

      CAP:一个分布式系统不可能同时满足一致性、可用性、分区容错性,这三基本要求最多只能满足其中的两个。

    一致性:在多个副本中的数据是否能保持一致。

    可用性:指系统提供的服务是否一致可用,对用户的请求是否能在有限的时间内返回结果。

    分区容错性:在遇到任何网络故障的时候,仍然满足一致性和可用性的服务。

             对一个分布式系统而言,分区容错性是一个最基本的要求。

    Base理论:面向的是大型高可用可扩展的分布式系统,和传统事务的ACID不一样,它完全不同于ACID的强一致性模型,而是提出通过牺牲强一致性来获取数据在一段时间内是不一致的,但最终达到一致状态。

    基本可用:分布式系统出现不可预知故障时,允许损失部分可用性。

    响应时间上的损失

    功能上的损失

    弱状态:允许不同副本数据同步时候的传输延时。 

    最终一致性:指系统中所有的副本,在经过一段时间的同步之后,最终能够达到一个一致的状态。 


  • 相关阅读:
    delphi 浮点 精度
    delphi 线程 TTask
    IOS 阻止 锁屏
    grideh SelectedRows Bookmark
    TBluetoothLE.OnDisconnectDevice
    TBluetoothLEDevice.UpdateOnReconnect
    判断字符串为空 为null
    delphi IOS 简单类型转换
    setKeepAliveTimeout
    IOS 后台之长时间任务 beginBackgroundTaskWithExpirationHandler 申请后台十分钟 600秒
  • 原文地址:https://www.cnblogs.com/jixp/p/9888709.html
一二三 - 开发者的网上家园