Eureka服务注册
我们现在已经将Eureka注册中心搭建完毕,现在我们开始完成Eureka的服务注册,毕竟仅仅只有一个Eureka的注册中心是没有意义的
首先我们创建一个bigsoft-product的服务向Eureka注册中心,创建工程的时候,因为要使用Eureka-clienth所以在添加了web的插件后还需要引入Eureka Discovery client
自动创建工程会帮我们生产我们需要的pom依赖如下:
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR1</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
现在我们在当前服务节点的启动main函数中添加需要的注解@EnableDiscoveryClient(这个注解的含义是将当前项目注册给服务治理中心)
注意:非常抱歉,以下截图中都导入错了,但是在新版本中只需要依赖spring-cloud-starter-netflix-eureka-client,就不需要这个注解了
最后一步依旧和之前注册中心的使用一样:添加配置文件
server:
port: 9001
spring:
application:
name: product
eureka:
client:
service-url:
defaultZone: http://localhost:8001/eureka/
其中port:90001指当前服务运行的端口,application-name指spring项目名称(这里需要重点注意,以后还要用这里),eureka-client-service-url 这里需要填写需要注册中心的域,这里需要和我们的Eureka注册中西相对于,也就是说:eureka-client-service-url 配置了服务治理中心同样的地址,这样它就能够注册到之前所配置的服务治理中心
测试:
首先启动Eureka注册中心,界面如下:
然后我们启动刚才bigsoft-product服务,理想状态下他会注册自己的信息到Eureka注册中心去,我们重启Eureka界面:
我们发现在Instances currently registered with Eureka(当前在Eureka注册的实例)这个位置比以前多了一些东西
Application——PRODUCT,其实这就是刚才我们在服务实例中添加的
spring:
application:
name: product
这行配置所产生的
当前Status Up代表着当前服务节点正常运行
完成了bigsoft-product的注册,我们趁热打铁顺便注册bigsoft-user服务,用于给product提供用户服务
创建工程的是引入和product相同的插件配置
在启动函数添加注解:
最后一步添加配置文件:
由于是单击测试所以要保证端口号的不同(否则端口冲突)
整体配置文件和product中差不多只需要更改application.name和port就可以,我们现在启动这个微服务
最后刷新我们的Eureka管理页面:
我们可以清晰的看到这个位置有原来的只有一个PRODUCT新增一个一个APPLICATION为USER的节点进去,这就证明当前我们的bigsoft-product以及bigsoct-user连个节点都注册到当前的注册中心了