Eureka和zookeeper的比较
什么是CAP?
cap的核心理论是一个分布式不可能很好的满足一致性,可用性和分区容错性这三个需求。因此根据CAP原理将NoSQL数据库分成了满足CA原则、满足CP原则和AP原则三大类。
- CA 单点集群,满足一致性。可用性的系统,通常在扩展上不大强大。
- CP满足一致性,分区容错的系统。通常性能不是特别高。
- AP-满足可用性,分区容错性。通常对一致性要求低一些。
但是对于目前市场上而言,大家多选CP和AP,因为分区容错性是必须实现的。
Eureka比Zookeeper比较
- Zookeeper是CP
- Eureka是AP
Zookeeper因为满足CP,因此需要时刻保持数据的一致性。我们都知道zookeeper有集群,如果master节点出现故障,剩余节点会重新选举leader.但是选举的时间特别的长。并且在选举的时间内,zookeeper集群不可用。
Eureka是AP,Eureka从Zookeeper中汲取了经验。在Eureka中每个节点相互平等,偶尔有几个节点挂掉并不影响其他节点的工作。并且Eureka还有自我保护机制,如果在分钟内超过85%的节点都没有正常的心跳,那么Eureka就认为客户端与注册中心出现了网络故障。
此时会出现以下三种情况:
- Eureka不再从注册表中移除因为长时间没有收到心跳而应该过期的服务
- Eureka依旧能够接受新服务的注册和查询请求,但是不会被同步到其他节点上(保证档期节点依然可用)
- 当网络稳定时,当前实例新的注册信息会贝同步到其他节点中
Eureka和zookeeper的比较的更多相关文章
- eureka 和zookeeper 区别 优势【转】
作为服务注册中心,Eureka比Zookeeper好在哪里 著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性).A(可用性)和P(分区容错性).由于分区容错性在是分布式系统中必须要保证的, ...
- Spring cloud Eureka 和 Zookeeper 比较
Eureka AP Zookeeper CP 好处:
- eureka 和zookeeper 区别 优势
作为服务注册中心,Eureka比Zookeeper好在哪里 著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性).A(可用性)和P(分区容错性).由于分区容错性在是分布式系统中必须要保证的, ...
- Eureka和ZooKeeper的区别
首先我们先说下: RDBMS==>(MySql,Oracle,SqlServer等关系型数据库)遵循的原则是:ACID原则(A:原子性.C:一致性.I:独立性.D:持久性.). NoSql==& ...
- Eureka 与 zookeeper 的区别、
前言在微服务的开发过程中,如果使用的是 Dubbo 那就必须使用到 Zookeeper ,在使用 Spring Cloud Eureka 时,自然其功能更强大得多.博主也不得不感叹,Spring Cl ...
- 作为注册中心Eureka比Zookeeper好在哪里?
作为注册中心Eureka比Zookeeper好在哪里? 著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性),A(可用性)和P(分区容错性).由于分区容错性P在是分布式系统中必须要保证 ...
- eureka和zookeeper的区别?
eureka和zookeeper都可以提供服务注册与发现的功能, zookeeper 是CP原则,强一致性(consistency)和分区容错性(Partition). eur ...
- SpringCloud学习笔记(四):Eureka服务注册与发现、构建步骤、集群配置、Eureka与Zookeeper的比较
简介 Netflix在设计Eureka时遵守的就是AP原则 拓展: 在分布式数据库中的CAP原理 CAP原则又称CAP定理,指的是在一个分布式系统中,Consistency(一致性). Availab ...
- 服务注册发现与注册中心对比-Eureka,Consul,Zookeeper,Nacos对比
服务注册发现与注册中心对比-Eureka,Consul,Zookeeper,Nacos对比 注册中心简介 流程和原理 基础流程 核心功能 1.Eureka.Consul.Zookeeper三者异同点 ...
随机推荐
- 自己制作一个简单的操作系统二[CherryOS]
自己制作一个简单的操作系统二[CherryOS] 我的上一篇博客 自己制作一个简单的操作系统一[环境搭建], 详细介绍了制作所需的前期准备工作 一. 一点说明 这个操作系统只是第一步, 仅仅是开机显示 ...
- 使用Storm实现累加求和操作
package com.csylh; import org.apache.storm.Config; import org.apache.storm.LocalCluster; import org. ...
- Maven 梳理-手动创建Maven项目(非web),使用Maven编译、测试、打包、安装、引用
创建空目录 F:\jtDevelop\maventest\myapp 创建pom.xml文件 <project xmlns="http://maven.apache.org/POM/4 ...
- git基本命令整合
基础命令 用户设置 $ git config --global user.name "Your Name" $ git config --global user.email &qu ...
- Chrome浏览器启动报错:应用程序无法启动,因为应用程序的并行配置不正确。
因为国庆节了,难得关一次机(可能搞IT的习惯吧),结果给祖国庆祝完70寿辰之后归来,启动电脑,就打不开Chrome浏览器了,报错如下: 应用程序无法启动,因为应用程序的并行配置不正确.有关详细信息,请 ...
- 使用JavaScript·求数组的最大值和最小值
前言 在数组中并没有提供arr.max()和arr.min()这样的方法.那么是不是可以通过别的方式实现类似这样的方法呢?那么今天我们就来整理取出数组中最大值和最小值的一些方法. 法一:其实利用 ...
- [LeetCode] 822. Card Flipping Game
Description On a table are N cards, with a positive integer printed on the front and back of each ca ...
- Django学习之文件上传
就这么六步! 一.settings配置文件中配置 MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'medias').replace ...
- 大头儿子和小头爸爸的战斗--java字符和字符串
故事背景 一座普普通通的小屋里,住着大头儿子.小头爸爸和围裙妈妈.在他们普普通通的生活中,总是响起充满欢乐的笑声.最温暖的家又成了他们每个人的爱的源泉. <大头儿子和小头爸爸>是孩子居首( ...
- Newtonsoft.Json.Linq 常用方法总结
目录 1.Entity to Json 1.1.准备工作 1.2.Entity to Json 1.3.Json to Entity 2.Linq To Json 2.1.创建对象 2.2.从 Jso ...