zoukankan      html  css  js  c++  java
  • CAP

    CAP

    一、概述

      分区容错性:

      理解:分布式系统集群中,一个机器坏掉不应该影响其他机器

      可用性:

      意思就是收到用户的请求,服务器必须给出回应

      比如说有G1和G2两台服务器

      用户无论是对G1还是G2请求,都能立即获得响应

      一致性:

      写操作之后,读操作,必须返回该值。

      G1和G2两台服务器,用户对G1里面的数据进行了更改,但是去G2服务器发起了读取,但是由于G1和G2之间要进行同步,那么用户无法立即获得回应,必须等同步完了以后获得回应。也就是说G1修改了后,会向G2发送消息,要求G2也修改。

      为什么一致性和可用性不能同时成立

      因为可恶出现分区容错,通信发生错误。

      比如保证G2一致性的时候,G1必须在写操作时,锁定G2的读操作和写操作。只有数据同步后,才重新开放读写。锁定期间,G2不能读写,这样就没有了可用性。

      如果保证可用性,那么就不能锁定G2,那么一致性就不成立。

      所以有了BASE理论

    BASE理论:

      基本可用、软状态、最终一致性

      基本可用:允许服务降级或者允许响应时间收到一定损失。性能和响应时间上肯定会损失一些

      软状态:允许同步数据的时候出现一定时间延迟。

      最终一致性:经过一段时间的同步数据后,最终能够达到一个一致的状态。

      

  • 相关阅读:
    mysql触发器实时检测一条语句进行备份删除
    ORA-12560: TNS: 协议适配器错误 windows
    DG:windows密码文件
    vim already exists!
    k8s 集群升级
    部署 k8s 备份工具 velero
    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
    lens 添加 k8s 集群
    redis系列
    s3c2440裸机-I2c编程-3.i2c中断服务程序
  • 原文地址:https://www.cnblogs.com/gushiye/p/14015704.html
Copyright © 2011-2022 走看看