"Eureka"来源于古希腊词汇,意为“发现了”。在软件领域,Eureka是Netflix在线影⽚公司开源 的⼀个服务注册和发现组件,和其他的Netflix公司的服务组件(例如负载均衡,熔断器,⽹关等) ⼀起,被Spring Cloud社区整合为Spring Cloud Netflix模块。
1.1 Eureka简介
和Zookeeper类似,Eureka是⼀个⽤于服务注册和发现的组件,最开始主要应⽤与亚⻢逊公司的云 计算服务平台AWS,Eureka分为Eureka Server和Eureka Client,Eureka Server为Eureka服务注册中 ⼼,Eureka Client为Eureka客户端。
Eureka负责微服务的注册和发现⼯作,它记录了服务和服务地址的 映射关系。在分布式架构中,服务会注册到Eureka注册中⼼,当服务需要调⽤其它服务时,就从Eureka找到服务的地址,进⾏调⽤。Eureka在Spring Cloud中的作⽤是⽤来作为服务治理实现服务注册和发 现。Eureka主要涉及到三⼤⻆⾊:服务提供者、服务消费者、注册中⼼。
服务注册是指,各个微服务在启动时,将⾃⼰的⽹络地址等信息注册到Eureka,服务提供者将⾃⼰ 的服务信息,如服务名、IP等告知服务注册中⼼。
服务发现是指当⼀个服务消费者需要调⽤另外⼀个服务时,服务消费者从Eureka查询服务提供者的 地址,并通过该地址调⽤服务提供者的接⼝。⼀个服务既可以是服务消费者,也可以是服务发现者。
各个微服务与注册中⼼使⽤⼀定机制(例如⼼跳)通信。如果Eureka与某微服务⻓时间⽆法通信, Eureka会将该服务实例从服务注册中⼼中剔除,如果剔除掉这个服务实例过了⼀段时间,此服务恢复⼼ 跳,那么服务注册中⼼将该实例重新纳⼊到服务列表中。
注意:Eureka2.x已经停更,解决⽅案推荐使⽤Nacos作为替换⽅案。
1.2 Eureka⼊⻔
Eureka Server中。Eureka基本机构主要包括以下3个⻆⾊。
Eureka Server:服务注册中⼼,提供服务注册和发现功能。
Provider Service:服务提供者,案例中就是⽀付微服务。
Consumer Service:服务消费者,案例中就是订单微服务。
未完,待续。。。