1. 服务治理

服务治理组件是微服务架构最核心和基础的模块,主要实现各个微服务实例的自动注册与发现。

1.1. 服务注册

每个微服务向注册中心登记自己提供的服务,将主机、端口、版本号、通信协议等一些附加信息告知注册中心,注册中心按服务名分类组织服务清单。注册中心维护一个心跳去监测清单中服务是否可用,若不可用从服务清单中剔除。

1.2. 服务发现

在服务治理框架下运行,服务间的调用不用指定具体服务实例的地址,而是通过服务名发起请求调用实现。调用方需要向注册中心咨询服务,获取所有服务列表,实现对具体服务的调用。对于同一个服务名多个服务实例,调用方将以某种策略获取出一个位置进行访问。

2. Eureka

2.1. Eureka服务端

Eureka服务端即服务注册中心。提供注册中心相关功能,可以集群方式部署

2.2. Eureka客户端

处理服务的注册与发现。客户端服务通过注解和参数配置的方式,嵌入在客户端应用程序代码中,应用程序运行时,Eureka客户端向注册中心注册自身提供的服务并周期性地发送心跳来更新服务租约。同时,也能从服务端查询当前注册的服务信息列表并缓存到本地并周期性地刷新服务状态。