Eureka源码系列简介

前言

最近关于微服务的话题很火热,本系列文章主要是从源码去解读Eureka。

PS:

  1. 什么是微服务,本文不做具体介绍,可以自行上网查找。
  2. 如果没有使用过SpringCloud,博主建议先自行搭建一套服务之后,再进行源码的解读。
  3. 该系列文章很枯燥也很耗时,请合理安排时间。
  4. 博主是参考了芋艿大佬的路线进行源码解读的,其中有部分问题借鉴了芋艿大佬的解读。点击访问芋艿大佬的博客

Eureka项目结构简介

Eureka项目结构图

eureka-client

  1. com.netflix.appinfo : Eureka-Client 的应用配置
  2. com.netflix.discovery : Eureka-Client 的注册和发现功能

eureka-client-archaius2

Archaius是 Netflix 开源的配置管理组件。Eureka 使用 1.x 版本,2.x 版本仍然在开发中,2.x只兼容jdk1.8以上的版本。

eureka-client-jersey2

Jersey 框架实现Eureka的 RESTful HTTP接口。Eureka 使用 1.x 版本,2.x 版本由社区实现。

eureka-core

  1. com.netflix.eureka.aws : 与AWS (Amazon Web Services) 相关,该系列文章暂不涉及AWS的分析
  2. com.netflix.eureka.cluster : 与peer节点复制(replication)相关
  3. com.netflix.eureka.lease : 租约,用来控制注册信息的生命周期(注册、续约、剔除)
  4. com.netflix.eureka.registry : 存储、查询服务注册信息
  5. com.netflix.eureka.resources : RESTful中的”R”,即资源。相当于SpringMVC中的Controller
  6. com.netflix.eureka.transport : 发送HTTP请求的客户端,如发送心跳
  7. com.netflix.eureka.util : 相关工具包

eureka-core-jersey2

Jersey 框架实现Eureka的 RESTful HTTP接口。Eureka 使用 1.x 版本,2.x 版本由社区实现。

eureka-examples

Eureka-Client 使用例子。

eureka-resources

通过 JSP 实现 Eureka-Server 的运维后台界面。

eureka-server

eureka-client + eureka-core + eureka-resources 打包成 Eureka-Server 的war包。

eureka-server-governator

使用 Netflix Governator (Google Guice的扩展类库,提供了Classpath扫描及自动绑定、生命周期管理、成员属性验证等功能)管理 Eureka-Server 的生命周期。目前该模块正在测试阶段。

eureka-test-utils

Eureka 单元测试工具类。

感谢您的支持!

本文标题:Eureka源码系列简介

文章作者:yoga

发布时间:2018年03月18日 - 20:03

原始链接:https://yoga0521.github.io/2018/03/18/Eureka源码系列简介/

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。 转载请注明出处!