服务治理:Spring Cloud Eureka

Spring Cloud Eureka主要负责完成微服务架构中服务治理功能。

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

服务注册

微服务实例启动后向注册中心注册自己的服务,服务注册中心会维护服务清单,并以心跳的方式去监测清单中的服务是否可用,若不可用测将实例从服务清单中剔除。

服务发现

服务间的调用不再通过具体的实例地址实现,而是通过向服务名发起请求调用实现。调用方需要向服务注册中心咨询服务,并获取所有服务的实例清单,以实现对具体服务实例的访问。

  1. 搭建服务注册中心
    (1)创建Spring Boot工程,命名eureka-server,添加pom依赖
    (2)添加@EnableEurekaServer注解
    (3)添加application.properties
# 设置为false,代表不向注册中心注册自己
eureka.client.reigister-with-euraka=false
  1. 服务提供者
    (1)添加@EnableDiscoveryClient注解
    (2)添加application.properties
# 服务提供者
spring.application.name=hello-service
# eureka注册中心
eureka.client.serviceUrl.defaultZone=http://localhost:1111/eureka/
  1. 服务消费者
    (1)添加@EnableDiscoveryClient注解
    (2)添加application.properties
# 服务消费者
spring.application.name=ribbon-consumer
# eureka注册中心
eureka.client.serviceUrl.defaultZone=http://localhost:1111/eureka/