Eureka源码解析系列文章汇总

先看一张图0file这个图是Eureka官方提供的架构图,整张图基本上把整个Eureka的核心功能给列出来了,当你要阅读Eureka的源码时能够参考着这个图和下方这些文章算法

EurekaServer

EurekaServer就是咱们常说的服务端Eureka服务端的启动可参考这篇文章EurekaServer自动装配及启动流程解析网络

它维护了一张服务注册表,在这个服务注册表中包含了全部的客户端信息架构

当服务端启动时会作这么几个事情:负载均衡

  1. 向集群中的其余服务端发起数据同步请求:Eureka应用注册与集群数据同步源码解析
  2. 开启清理过时租约的线程:Eureka客户端续约及服务端过时租约清理源码解析
EurekaClient

EurekaClient就是咱们常说的客户端Eureka客户端的启动可参考这篇文章:EurekaClient自动装配及启动流程解析线程

客户端是与应用程序绑定到一块儿的,某种意识上来讲它是应用实例在注册中心的代言人cdn

当客户端启动时会作这么几个事情:blog

  1. 向服务端发起注册请求:Eureka应用注册与集群数据同步源码解析
  2. 开启续租的线程:Eureka客户端续约及服务端过时租约清理源码解析
  3. 先全量获取一次可用服务列表且开启一个定时增量获取的线程:Eureka获取服务列表源码解析

当服务下线时会向服务端发送下线通知:Eureka服务下线源码解析v8

服务分区

在图中三个EurekaServer之间是用线隔开的,在EurekaServer上面的三个us-east-xx其实就表明着三个服务端所在的三个分区。部署

为何会出现分区这个概念呢?当一个项目的用户量比较大时,通常会在多个城市的多个机房分别部署多套服务,为了不网络延时,咱们就但愿一个条件容许的状况下一个服务优先调用同机房的服务。为了实现这个功能Ribbon还专门提供了一种负载均衡算法get

自我保护模式

为了不网络分区故障的解决方案:Eureka自我保护模式源码解析1

相关文章
相关标签/搜索