Spring Cloud中使用Eureka来做服务注册和发现,来统一管理微服务实例。
1.使用IDEA创建一个空的Maven项目做父模块
(也可以不用父项目,所有模块都用平行结构)
删除父模块src文件夹
可使用Spring Initializr来创建模块或者创建Maven项目手动添加依赖
2.使用Spring Initializr创建Eureka Server
选择SDK 1.8
Artifact填写对应模块的名称
依次选择Cloud Discovery->Eureka Server,Spring Boot默认选择的是2.0.4
可以参考Spring Cloud官方对应的Spring Cloud版本对应组件的版本,可以看到Finchley.SR1对应的是Spring Boot 2.0.4.RELEASE版
https://projects.spring.io/spring-cloud/
创建好后会还原Maven项目的依赖,需要一段时间。
2.1配置Eureka Server注解
还原成功后会生成一个模块名称+Application的启动类,在类名上加上@EnableEurekaServer注解用来申明这是个Eureka服务器
2.2配置Eureka Server配置文件
配置文件可参考号官方文档,找到对应的Spring Cloud版本,点击Reference。
搜索找到Standalone Mode单机模式
将项目中的application.properties后缀名改为yml,把application.yml的配置文件内容复制到项目中。
port为服务的端口,可以自定义,我这里把端口改为了8881
idea使用Debug启动成功后,在浏览器输入::8881/ 有一下内容则说明该服务启动成功。
3.使用Maven项目创建Eureka Server
创建一个空的Maven项目,在父模块创建的会自动选中父模块
将项目中的pom文件parent节点全部删除,到Spring Cloud官网复制Maven项目的依赖相关内容到pom文件的project节点下
官网的依赖文件是Eureka客户的依赖,把dependencies节点下的依赖都删除
添加Eureka Server的依赖:
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency>