Nacos 临时实例是AP模式
Nacos 持久实例是CP模式
Zookeeper CP模式
Eureka AP模式

CAP原则:
C(Consistency):一致性
A(Availablitity):可用性
P(Partition tolerance):分区容错性

BASE原则:
BA:基本可用(Basically Available)
S:软状态(Soft State)
E:最终一致性(Eventual Consistency)
CAP原则是三选二;
BASE原则是CAP原则的折中,C,A,P三个都要,但是不保证每个原则的实现都是100%;
分布式系统肯定优先保证P,多数时候再C,A之间权衡。

分区(出现网路不通):就是说节点一和节点二没法进行正常的网络通信了。也就说此时不能进行数据同步了。
容错:就算出现分区,导致数据无法同步,两个节点之间无法正常通信,但是仍然要对外提供服务,不能因为分区导致整个系统宕机无法对外提供服务。

举例说明:
当发生分区时,我们在保证P的前提下
对节点1写入数据,{数据段1};
不对节点2做任何操作。
若我们保证C(一致性),那么此时访问节点1,就会读到{数据段1},但是如果访问的是节点2,读不到{数据段1},所以此时为了实现一致性,我们需要让整个服务暂停使用,这也就无法在实现CP的同时,实现A(可用性)。
若我们保证A(可用性),那么此时访问节点1,就会读到{数据段1},同时也可以访问节点2,但是不会读到{数据段1},这就失去了一致性,也就说无法在实现AP的同时,实现C(一致性)。

CAP(AP模式/CP模式)相关推荐

  1. Nacos中AP和CP模式如何切换

    CAP理论 这个定理的内容是指的是在一个分布式系统中.Consistency(一致性). Availability(可用性).Partition tolerance(分区容错性),三者不可得兼. 一致 ...

  2. Nacos中服务注册中心AP、CP模式实现,AP、CP模式切换

    本文分析Nacos基于Nacos 2.0 Nacos中服务注册中心默认是AP模式,如果设置为CP模式 那么客户端设置 spring.cloud.nacos.discovery.ephemeral=fa ...

  3. KV存储-Aerospike之AP与CP模式

    Aerospike(以下简称Spike) 1.从Spike 3.0开始,它是一个AP数据库,即在各种网络分区情况下提供可用性而不是一致性的数据库.Spike 3.0不提供在事务期间保持记录一致复制所需 ...

  4. Nacos 的AP和CP模式

    Nacos是阿里开源的,Nacos 支持基于 DNS 和基于 RPC 的服务发现.在Spring Cloud中使用Nacos,只需要先下载 Nacos 并启动 Nacos server,Nacos只需 ...

  5. Nacos是两种模式CP与AP Nocos服务注册和配置中心

    zookeeper不支持负载均衡 springBoot 中配置文件的加载是存在优先级顺序的,bootstrap优先级高于application Nacos支持AP与CP模式的切换 C:是所有节点在同一 ...

  6. 从零开始的Linux 802.11WiFi CSITool(AP和monitor模式均亲测可用)

    从零开始的Linux WiFi CSITool(AP和monitor模式均亲测可用) 主要参考 1.官方资料: 2.亲测可用安装教程: 零.Linux及CSI相关知识的学习 1.Linux相关 1.1 ...

  7. Nacos注册中心设计分析-CP模式

    CP模式下集群支持单写多读,即只有集群中的leader节点才能处理更新服务实例(即注册或删除)的请求,而所有的机器都可以处理查询请求.当集群中的非leader节点接收到更新服务实例的请求时,会转发给l ...

  8. AP和STA模式分别是什么意思

    AP和STA模式分别是什么意思 物联网无线通讯wifi模块AP和STA模式分别是什么意思?   Wifi模块为串口或TTL电平转WIFI通信的一种传输转换模块,内置无线网络协议IEEE802.11协议 ...

  9. CAP理论/AP架构/CP架构

    最近有时间研究分布式架构,因为公司使用的Zookeeper,并没有使用Spring Cloud Eureka,所以想探究一下他们之间的区别,于是看到简书里的文章:Spring Cloud Eureka ...

最新文章

  1. 拜访了这位小哥的GitHub后,我失眠了!
  2. pandas转mysql特定列_在pandas.DataFrame.to_sql时指定数据库表的列类型
  3. mysql error 1236_解决MySQL数据库同步1236错误
  4. 【tomcat】手动部署动态JavaWeb项目到tomcat
  5. Unity笔记(正版全阶段)目录
  6. 学习:ups电池放电时间是怎么计算的?
  7. 15-多容器复杂应用的部署
  8. oracle biee 11g客户端连接OCI 10g/11g数据源时报错
  9. neo4j merge
  10. 卡巴斯基许可Key需求登记表
  11. listWdiget控件
  12. Mysql绿色版本安装
  13. 蓝桥杯:填字母游戏(第八届决赛javaB第五题)——博弈+递归+回溯
  14. 软件测试每日一题—分享功能测试
  15. 一个C语言的基本教程—IO篇
  16. Windows沙拉:默认浏览器背后的故事
  17. unity 获取选中的目录_Unity的目录管理
  18. 19年9月下旬宝马BMW诊断维修指南瑞金Rheingold(ISTA-D)4.19.21 安装版
  19. java实现12306查票_[转]java抓取12306信息实现火车余票查询示例firefox
  20. JavaScript如何实现多线程?

热门文章

  1. windows 2000 安全策略设置,2003 IP安全设置
  2. 为知笔记使用 Typora 作为默认编辑器的问题
  3. 强化学习系列文章(二十八):进化强化学习EvoRL的预实验
  4. python线性规划算法_线性规划的算法分析
  5. java异常throws怎么用,throw_JAVA的throw和throws怎么用!
  6. java 多个throw_Java throw和throws 关键字
  7. ESP32的MQTT使用
  8. 看完这篇 教你玩转渗透测试靶机vulnhub——FunBox10(Under Construction)
  9. 超立方体的子平面(m-face of n-cube)
  10. 网易笔试题(Java部分)