eureka是云端服务发现,一个基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移。

1、服务治理的基础角色

服务注册中心:提高服务注册与发现的能力。

服务提供者:提供服务的应用,会把自己提供的服务注册到注册中心。

服务消费者:服务的消费者,从注册中心获取服务列表。

2、服务续约

在注册完服务以后,服务提供者会维护一个心跳来向注册中心证明自己还活着,以防止被剔除服务。

3、服务下线

当服务实例进行正常关闭时,会把一个REST请求给注册中心,收到请求后,将该服务状态设置下线,并把这个事件传播出去。

4、失效剔除

当服务费正常下线时,可能服务注册中心没有收到下线请求,注册中心会创建一个定时任务(默认60秒)将没有在固定时间(默认90秒)内续约的服务剔除掉。

5、自我保护机制

在运行期内,注册中心会统计心跳失败比例在15分钟之内是否低于85%,如果低于的情况,注册中心会将当前注册实例信息保护起来,不再删除这些实例信息,当网络恢复后,退出自我保护机制。

自我保护机制让服务集群更稳定、健壮。

欢迎批评指正,提出问题,谢谢!