Spring Cloud Eureka主要负责完成微服务架构中服务治理功能。
服务治理是微服务架构中最为核心和基础模块,主要用来实现各个微服务实例的自动注册和发现。
服务注册
微服务实例启动后向注册中心注册自己的服务,服务注册中心会维护服务清单,并以心跳的方式去监测清单中的服务是否可用,若不可用测将实例从服务清单中剔除。
服务发现
服务间的调用不再通过具体的实例地址实现,而是通过向服务名发起请求调用实现。调用方需要向服务注册中心咨询服务,并获取所有服务的实例清单,以实现对具体服务实例的访问。
- 搭建服务注册中心
(1)创建Spring Boot工程,命名eureka-server,添加pom依赖
(2)添加@EnableEurekaServer注解
(3)添加application.properties
# 设置为false,代表不向注册中心注册自己
eureka.client.reigister-with-euraka=false
- 服务提供者
(1)添加@EnableDiscoveryClient注解
(2)添加application.properties
# 服务提供者
spring.application.name=hello-service
# eureka注册中心
eureka.client.serviceUrl.defaultZone=http://localhost:1111/eureka/
- 服务消费者
(1)添加@EnableDiscoveryClient注解
(2)添加application.properties
# 服务消费者
spring.application.name=ribbon-consumer
# eureka注册中心
eureka.client.serviceUrl.defaultZone=http://localhost:1111/eureka/