一、简介
1、什么是Eureka
Eureka是Netflix公司发明的服务发现中间件,包括服务发现服务器和客户端
2、快速启动
Spring提供了快速搭建环境的网站:https://start.spring.io/
访问该网站会出现如下界面:
在Search dependenices 中选择搭建Eureka服务器需要的组件: Web,Actuator,EurekaServer
点击Generate Project 将其下载到本地, 然后解压
3、使用IntelliJ IDEA打开解压后的文件夹
点击Open
选择解压后的文件夹
注:如果打开Idea的右下角一直在下载东西,那么检查Maven环境是否有问题,比如是否已经将Maven仓库地址配置为国内镜像(这一块可以百度Maven 配置淘宝镜像)
4、配置applicdation.properties文件
# 应用程序的名称
spring.application.name=spring-cloud-eureka-server
# 应用程序的端口,默认是8080
server.prot=9090
5、配置bootstrap.properties文件(如果没有这个文件就创建这个文件,和application.properties同级目录)
# 是否将该实例的注册信息注册到Eureka服务器上,在只有一个Eureka服务器的情况下没必要,只是用于实例的发现
eureka.client.registerWithEureka=false
# 是否向Eureka服务器获取注册信息,在单实例的Eureka中共没必要
eureka.client.fetch-registry=false
## 注册服务器的地址,其实就是该实例的地址,如果不指定默认是:http://localhost:8761/eureka
eureka.client.serviceUrl.defaultZone=http://localhost:9090/eureka
6、在启动类上加上@EnableEurekaServer注解
7、启动项目
访问地址:http://localhost:9090就可以看到如下页面(千万不要访问http://localhost:9090/eureka/,会报错404错误,这个地址是用于客户端向服务端注册用的)
二、编写Eureka客户端
1、构建项目
Eureka Discovery: 是Eureka客户端需要的组件
2、使用IDEA打开项目
3、配置application.properties文件
spring.application.name=spring-cloud-eureka-client
server.port=8080
4、配置bootstrap.properties文件
## 向服务器注册中心,注册该实例
eureka.client.serviceUrl.defaultZone=http://localhost:9090/eureka/
5、在启动类上加上注解@EnableDiscoveryClient
其实使用@EnableEurekaClient也是可以的,使用EnableDiscoveryClient的好处在于,以后的服务注册中心不一定是Eureka那么客户端就不需要更改了,使用EnableEurekaClient注解,注册中心只能是Eureka
6、启动客户端,访问http://localhost:9090/eureka
发现Eureka客户端已经成功的注册服务端上了
上述的搭建过程中,有两个配置文件分别为application.properties和bootstrap.properties配置文件,这是为了养成良好的习惯,将SpringBoot的配置和SpringCloud的配置分离开来