【SpringCloud】——之注册中心Eureka详解

版权声明:欢迎访问,本文为小编原创文章 https://blog.csdn.net/changyinling520/article/details/82315840

前言

了解Dubbo注册中心的小伙伴们肯定对于SpringCloud的注册中心Eureka充满了好奇,Eureka为什么能够成为

内容

Eureka是什么?
Eureka是Netfilx的一个子模块,也会核心模块之一,基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移,服务注册于发现对于微服务架构师非常重要的,有了服务发现,主要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了,功能类似于dubbo的注册中心,比如zookeeper。
2.Eureka的基本框架
它采用了C-S设计架构,作用服务注册的服务器,它就是服务注册中心
这里写图片描述
Eureka包含两个组件:Eureka Server和Eureka Client。
EurekaClient是一个java客户端,用于简化Eureka Server的交互,客户端同时也具备一个内置,使用轮询(round-robin)负载均衡器,在应用启动后,将会想Eureka Server发动心跳,默认周期30s。
可以定义负载均衡算法
Eureka的自我保护机制:

某时刻一个微服务不可用了,Eureka不会立刻清理,依旧会对该微服务信息进行保存。它是应对网络异常的安全保护措施
默认情况下,如果EurekaServer在一定时间内收到某一个微服务实例的心跳,EurekaServer会注销该实例(默认是90秒),但是当网络分区故障发生时,微服务与EurekaServer之间无法正常通信,以上行为可能变得非常危险——因为微服务本身其实就是健康的,此时本不应该注销该服务的。Eureka通过“自我保护模式”解决这个问题——当EurekaServer节点在短时间内丢失过多客户端是,就是进行自我保护模式。一旦进行保护模式,EurekaServer就会保护服务注册列表中的信息,不在删除服务注册表中的数据。当网络故障恢复后,该Eureka
Server节点会自动退出自我保护模式。

从CAP理论方面查看Eureka和zookeeper的之间的区别:

CAP(consistency,availablility,partitlon tolerance),强一致性,可用性,分区容错性。

猜你喜欢

转载自blog.csdn.net/changyinling520/article/details/82315840