据说微服务很火,跟个风。
先创建一个名为first-eureka-service的项目作为服务器,书上说在pom.xml中加入这个
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
可是我的项目加这个有错,可能版本原因我也不是很清楚,毕竟刚接触,然后改用这个就行了,加了个netflix。我用的spring start project自动引入的依赖。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
在项目application.yml中声明端口为8761
server:
port: 8761
再在启动类上加@EnableEurekaServer注解,声明这是一个服务器
@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaApplication.class, args);
}
}
此时启动项目发现报错,这是因为该服务器启动时会把自己当作一个客户端,去注册Eureka服务器,加入以下两个配置就行了
eureka:
client:
register-with-eureka: false #声明是否将自己信息注册到服务器
fetch-registry: false #是否到Eureka服务器中抓取注册信息
现在编写客户端(first-eureka-client),设置端口、配置该服务的实例的主机名并将其注册到服务器,在启动类加@EnableEurekaClient注解声明它是个客户端,然后启动。
server:
port: 8762
eureka:
instance:
hostname: localhost
client:
service-url:
defalutZone: http://localhost:8761/eureka/
浏览器输入地址http://localhost:8761可以看到配置成功了