1.3.3 服务注册 1.3.3.1 将cms注册到Eureka Server
下边实现cms向Eureka Server注册。
1、在cms服务中添加依赖
<!-- 导入Eureka客户端的依赖 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
2、在application.yml配置
eureka:
client:
registerWithEureka: true #服务注册开关
fetchRegistry: true #服务发现开关
serviceUrl: #Eureka客户端与Eureka服务端进行交互的地址,多个中间用逗号分隔
defaultZone: ${EUREKA_SERVER:http://localhost:50101/eureka/,http://localhost:50102/eureka/}
instance:
prefer-ip-address: true #将自己的ip地址注册到Eureka服务中
ip-address: ${IP_ADDRESS:127.0.0.1}
instance-id: ${spring.application.name}:${server.port} #指定实例id
因为50101和50102互相注册,绑定高可用,所以向50101上报信息,那么50102也能拿到信息。所以defaultZone后边写一个http://localhost:50101/eureka/就可以了,但是最好写http://localhost:50101/eureka/,http://localhost:50102/eureka/ 这2个地址,因为万一写一个50101地址,万一50101这个服务死了,那么都2个server都获取不到信息。所以建议写2个,如果一台server挂了,另一个server还能继续使用。
serviceUrl: #Eureka客户端与Eureka服务端进行交互的地址,多个中间用逗号分隔
defaultZone: ${EUREKA_SERVER:http://localhost:50101/eureka/,http://localhost:50102/eureka/}
不需要配置host主机名了,因为配置host主机名,需要解析到localhost,所以这里直接将自己的ip注册到Eureka服务中
3、在启动类上添加注解
因为cms是个客户端,不仅不需要注册服务,还需要去Eureka去发现服务。
在启动类上添加注解 @EnableDiscoveryClient ,表示它是一个Eureka的客户端
因为要从微服务远程调用,所以需要发现服务。写上上边那个注解。
启动cms服务
cms的微服务
course服务添加依赖
启动类添加注解
添加eureka配置信息
运行服务