相信熟悉Spring Cloud的读者对注解@EnableDiscoveryClient 及@EnableEurekaClient 并不陌生。
要想将一个微服务注册到Eureka Server(或其余服务发现组件,例如Zookeeper、Consul等),Eureka 2.0闭源以后,Consul慢慢会成为主流。spring
搭建Eureka 服务器十分简单,步骤以下:服务器
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency>
2. 写注解:在启动类上添加注解@EnableDiscoveryClient 或@EnableEurekaClientapp
@EnableDiscoveryClient @SpringBootApplication public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }
配置文件 application.properties内容:微服务
server.port=8080 eureka.instance.hostname=127.0.0.1 # 是否向服务中心注册本身 eureka.client.register-with-eureka=false # 是否检索服务 eureka.client.fetch-registry=false eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/
从Spring Cloud Edgware开始,@EnableDiscoveryClient 或@EnableEurekaClient 可省略。只需加上相关依赖,并进行相应配置,便可将微服务注册到服务发现组件上。
@EnableDiscoveryClient和@EnableEurekaClient共同点就是:都是可以让注册中心可以发现,扫描到微服务。
不一样点:@EnableEurekaClient只适用于Eureka做为注册中心,@EnableDiscoveryClient 能够是其余注册中心。fetch