Eureka核心特性

目录

  • Eureka核心特性
  • 服务注册
  • 服务续约
  • 服务下线
  • 获取注册列表信息
  • Eureka面试点
  • CAP理论
  • 多注册中心比较
  • Eureka注册慢
  • Eureka的自我保护

服务注册

  1. Eureka Client在第一次心跳时向Eureka Server注册
  2. 注册时会提供诸多自身元数据:主机名、端口、健康指标URL等

服务续约

  1. Eureka Client通过发送心跳进行续约
  2. 默认情况下每30秒发送一次心跳
  3. 如90秒内Eureka Server未收到续约,则进行服务剔除

服务下线

  1. Eureka Client优雅退出时会发送cancel命令
  2. Eureka Server收到cancel命令时会删除该节点

获取注册列表信息

  1. Eureka Client会缓存由Server获取的注册表信息
  2. Eureka Client会定期更新注册表信息【默认30秒】
  3. Eureka Client会处理注册表的合并等内容

Eureka面试点

CAP理论

  1. 一致性:Consistency
  1. 强一致性:多个节点的信息高度保持一致
  2. 弱一致性:多个节点的信息尽量保持一致
  1. 可用性:Availability
  1. 系统可用性
  1. 分区容错性:Partition tolerance
  1. 不同网络分区下,操作对其它系统可见

CAP理论:在任何一个时刻内,不可能有任何一个系统能同时满足一致性、可用性,分区容错性,可以任意两两组合,但不可能CAP完全满足。

CP:类似Mysql

CA:典型的数据库场景和分布式数据库场景

AP:典型的Redis

多注册中心比较

  1. 分布式基础:CAP理论
  2. 常见的注册中心:Zookeeper、Eureka等
  3. Eureka主要保证AP特性
  4. Zookeeper是典型的CP特性
  5. Zookeeper:当获取到一个数据时,会对所有节点做广播,广播结束之前,不管是操作的哪一个节点,都不会看到所操作的数据
  6. Eureka:在多注册中心的场景中,优先保证可用性。Eureka在服务剔除时,服务不是立刻下线,中间会有很多过程,如客户端去服务端拉取数据时有30秒延迟,服务会保持一段时间,所以即使获取到的是不可用节点,也能获取
  7. AP和CP是Eureka和Zookeeper最主要的区别

Eureka注册慢

  1. 注册慢的根本原因在于Eureka的AP特性
  2. Eureka Client延迟注册,默认30秒
  3. Eureka Server的响应缓存,默认30秒
  4. Eureka Server的缓存刷新,默认30秒

Eureka的自我保护

  1. Eureka Server会自动更新续约更新阀值
  2. Eureka Server续约更新频率低于阈值则进入保护模式
  3. 自我保护模式下Eureka Server不会剔除任何注册信息