Eureka

1.Eureka是什么

eureka是一个注册中心,提供服务注册与发现。有两个组件:eureka服务端和eureka客户端。

  • eureka服务端:作为服务的注册中心,用来提供服务注册,支持集群部署。
  • eureka客户端:一个java客户端,将自身的服务注册到服务端,同时将服务端的信息缓存到本地,客户端和服务端定时交互。

 

2.Eureka的工作原理

 

  •  Eureka-Server :服务注册中心(可以是一个集群),对外暴露自己的地址
  • 服务提供者(Service-Provider):启动后向Eureka注册自己的信息(地址、服务名等),并且定期进行服务续约。
  • 消费者(Service-Consumer):服务调用方,会定期去Eureka拉去服务列表,然后使用负载均衡算法选取一个服务调用。
  • 心跳(续约):是续约的方式,服务提供者定期通过http方式向Eureka刷新自己状态。

 

3.服务下线、失效剔除、自我保护

  • 服务的注册和发现都是可以控制的,可以关闭也可以开启。默认都是开启的。
  • 服务注册之后需要心跳,心跳周期默认30秒一次,超过90秒没发心跳认为服务提供者宕机。
  • 服务的拉取也是默认30秒一次。
  • Eureka每隔60秒会剔除标记为宕机的服务。
  • Eureka有自我保护机制,当心跳失败比例超过阈值(85%),那么开启自我保护,不再剔除服务(高可用)。
  • Eureka的集群实现方式是多个Eureka互相注册,互相拉取,这也是保证它高可用。

 

posted @ 2021-12-08 22:14  sellingpear  阅读(233)  评论(0)    收藏  举报