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三者异同点 ...
随机推荐
- Flutter学习笔记(27)--数据共享(InheritedWidget)
如需转载,请注明出处:Flutter学习笔记(27)--数据共享(InheritedWidget) InheritedWidget是Flutter中非常重要的一个功能型组件,它提供了一种数据在widg ...
- 转载:alpha测试和beta测试的区别;黑盒测试和白盒测试的区别;
alpha测试版,有点相当于内部测试,一般开发人员在场 ,是由用户做测试,但开发人员在场,一般是请用户到开发现场去测试 beta测试版,完全交给用户,由用户做测试,返回测试报告,相当于发行前的一个 ...
- Guava的常用方法示例
Guava Maven Dependency <dependency> <groupId>com.google.guava</groupId> <artifa ...
- 关于react-router最新版本的使用
现在react-router已经更新到了5.1.1版本,在一些使用方法上较之前有了很多改变,现做初步列举,以后会陆续更新. 关于引入react-router和基本使用 旧版本中引入react-rout ...
- ViewModel 和 ViewModelProvider.Factory:ViewModel 的创建者
本文翻译自:https://medium.com/koderlabs/viewmodel-with-viewmodelprovider-factory-the-creator-of-viewmodel ...
- 什么是Affordance?
什么是Affordance? 在人机交互领域中,我们常常提到某个设计的affordance.其中文对应的意思并没有一个统一的意见.Wikipedia2上先这个词被译为“承担特质”或者“环境赋使”(非常 ...
- [书籍翻译] 《JavaScript并发编程》第一章 JavaScript并发简介
> 本文是我翻译<JavaScript Concurrency>书籍的第一章,该书主要以Promises.Generator.Web workers等技术来讲解JavaScript并 ...
- Docker 环境搭建(RedHat 7)
Docker 环境搭建(RedHat 7): CentOS7 下载 http://mirrors.sohu.com/centos/7/isos/x86_64/ 装载镜像文件 安装Linux 7, 参考 ...
- ELK 学习笔记之 Logstash之codec配置
Logstash之codec: Logstash处理流程: input=>decode=>filter=>encode=>output 分类: Plain编码: input{ ...
- TinyXML2的快速实践
最近遇到个需要在C++中处理XML文件的需求,虽然对此方面并不是很熟,但好在有GitHub上的awesome-cpp项目的帮助,还是收获了足够的相关知识. 类库 常用的或被推荐的XML类库有以下数个选 ...