首页 > 其他分享 >分布式下AP与CP的区别

分布式下AP与CP的区别

时间:2023-09-08 23:22:14浏览次数:40  
标签:分区 用户 AP 一致性 CP 数据 服务端 分布式

在分布式中有一种理论叫CAP理论,C表示数据一致性,A表示系统可用性,P表示分区容错性,提出这个理论的人也指出了CAP这三者间只能有两个同时成立。

先来解释一下P分区容错性,在分布式的情况下,应用都会搭一个集群,比如用户在使用一个服务的时候可能会有多个用户服务端,当一个用户在一个服务端进行了修改了数据时,另一个服务端如果有相关的数据,那也需要跟着修改,否则,两个服务端的得到的结果就会不一样,因此两个服务端之间需要进行数据的通信,但是数据通信的时候可能会由于网络波动导致通信失败,这时就会出现分区,而P就是保证,在出现分区的时候,用户仍可访问任何一个服务端。

而用户在使用应用时难免会出现网络波动导致产生分区,因此在CAP这个理念中,P是一定存在的,因为前面提到过,CAP三者之间只有两个可以同时存在,要保证AC也就是数据一致性和系统可用性同时存在只有两种情况,一种是用户在使用应用时不会存在网络波动,那么只要两者保持通信,数据就会永远一致,但是这是不现实的,另一种情况是这是一个单节点,单节点就不存在数据不一致了,因为只有一个数据,但是现在说的是分布式,所以AC是不存在的,那么就只剩下两种情况,CP和AP。

CP:保证了数据的一致性。适用于一些强一致性要求较高、可以容忍短暂的不可用性的应用场景,缺点就是在在发生网络波动时,会导致服务不可用,需要等到数据一致后,才能让用户正常访问,所以会影响用户体验。

AP:对于一些对一致性要求较低、需要保证系统的高可用性和持续可用性的应用场景。适用于社交媒体,AP不会影响用户体验,能保证系统的正常运行;在面对网络分区时,AP系统会牺牲一致性,允许系统中的数据存在短暂的不一致。

标签:分区,用户,AP,一致性,CP,数据,服务端,分布式
From: https://www.cnblogs.com/hwj7/p/17688737.html

相关文章

  • evil-winrm:An error of type OpenSSL::Digest::DigestError happened, message is Dig
    使用evil-winrm无法连接主机,出现以下错误Info:EstablishingconnectiontoremoteendpointError:AnerroroftypeOpenSSL::Digest::DigestErrorhappened,messageisDigestinitializationfailed:initializationerrorError:Exitingwithcode1 修改/etc/ssl/ope......
  • FAILED: SemanticException Unable to determine if hdfs://localhost.localdomain:90
    问题描述在hive数据库里面,使用select语句对表的数据进行查找,就出现了这个错误:问题解决这怎么说呢?就是说,本来想先放一放,之后再解决,在解决了namenode的问题之后,再次打开hive,执行select语句,发现莫名其妙地好了;本人也很是莫名其妙;......
  • appium+python安装配置及代码测试完整流程
    1.appium安装及环境配置2.模拟器安装或者直接连接真机也可以3.手机各配置参数获取platformName'、'platformVersion'、appActivity、deviceName、webdriver.Remote 4.代码运行测试,启动手机应用5.进阶版,代码为POM模式......
  • Paper: Informer
    Informer时间序列模型1Introduction3significantlimitationsinLSTFLSTF(Longsequencetime-seriesforecasting)Thequadraticcomputationofself-attention.Theatomoperationofself-attentionmechanism,namelycanonicaldot-product,causesthetimecom......
  • uniapp项目实践总结(十三)封装文件操作方法
    导语:在日常APP开发过程中,经常要进行文件的保存、读取列表以及查看和删除文件等操作,接下来就看一下具体的方法。目录原理分析方法实现实战演练案例展示原理分析主要是以下API。uni.saveFile:保存文件到本地缓存列表;uni.getSavedFileList:获取保存文件列表;uni.getSa......
  • 【刷题笔记】42. Trapping Rain Water
    题目Givennnon-negativeintegersrepresentinganelevationmapwherethewidthofeachbaris1,computehowmuchwateritisabletotrapafterraining.Theaboveelevationmapisrepresentedbyarray[0,1,0,2,1,0,1,3,2,1,2,1].Inthiscase,6unitsof......
  • appium+python安装后代码测试
     fromappiumimportwebdriver#模拟器/真机已经被电脑识别到(adbdevices)#字典#1、设置终端参数项desired_caps={"platformName":"Android","platformVersion":"6.1.1","appPackage":"com.ss.android.article.n......
  • SAP Commerce Cloud 里的 smartedit webservices OCC API
    SAPCommerceCloud是SAP提供的云端电子商务解决方案,而OCCAPI(OmniCommerceConnectAPI)是SAPCommerceCloud的一部分,它是一个RESTfulAPI,提供了与SAPCommerceCloud进行交互的接口,使得开发者可以创建,读取,更新,和删除商业数据,包括产品,购物车,用户,和订单等。这个接口/......
  • 寻找app定制开发公司的10个关键因素,你知道吗?
    在今天的数字化时代,移动应用程序已经成为企业和创业者实现业务目标的关键工具之一。然而,许多组织和个人不具备足够的技术知识和资源来开发自己的应用程序,因此需要寻找可靠的app定制开发公司来实现他们的愿景。但是,在选择合适的开发公司时,需要谨慎,以下是一些关键步骤和考虑因素,以帮......
  • 什么是 SAP ABAP Extended Passport
    根据SAPABAP官方文档:AbbreviatedasEPP.InternaldatastructurethatexistsforeveryABAPsession.Itcontainsinformationaboutthesessionanditsexternalconnections.ABAPExtendedPassport简称EPP,是一种内部数据结构,每个ABAPSession都内部维护了一......