Eureka是Netflix开发的服务发现框架,本身是一个基于REST的服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中,以实现SpringCloud的服务注册和发现功能。
Demo-编写Server端
引入依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
加入注解
@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaApplication.class, args);
}
}
增加配置文件
# 项目端口号
server.port=8761
# 是否要注册到其他Eureka Server实例
eureka.client.register-with-eureka=false
# 是否要从其他Eureka Server实例获取数据
eureka.client.fetch-registry=false
eureka.client.service-url.defaultZone=http://localhost:8761/eureka/
Demo-编写Client端
引入依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
加入注解
@EnableDiscoveryClient
@SpringBootApplication
public class ClientApplication {
public static void main(String[] args) {
SpringApplication.run(ClientApplication.class, args);
}
}
增加配置文件
# 指定注册到eureka server上的服务名称,
spring.application.name=eureka-client1
# 指定eureka server通信地址,注意/eureka/不能少
eureka.client.service-url.defaultZone=http://localhost:8761/eureka/
# 是否注册IP到eureka server,如不指定或设为false,那就会注册主机名到eureka server
eureka.instance.prefer-ip-address=true
测试
通过访问http://localhost:8761 可观察到类似如下界面,则表示启动成功
网友评论