Eureka注册中心
本文介绍Eureka注册中心的使用,注册中心有服务端和客户端当然可以使用zookeeper和Console,后续在给大家介绍
项目搭建
我们先搭建一个EruekaServer就是一个;
首先需要引入依赖,我们使用springboot+maven搭建项目这样更快捷方便。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.1.RELEASE</version>
</parent>
<dependencies>
<!-- web应用程序的依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--springcloud中eureka依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
<!--actuator-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
</dependencies>
我们使用的是springboot2.1.1版本。
然后再在本项目中的resources目录下创建一个application.yml文件
server:
port: 8100 #Tomcat运行端口
spring:
application:
name: eureka-server
eureka:
instance:
hostname: 127.0.0.1 #eureka的主机名字
client:
register-with-eureka: false #是否将该eureka服务工程注册到服务中(不需要把自己注册到自己服务中)
fetch-registry: false #是否抓取该服务的注册数据
service-url:
defaultZone: http://${eureka.instance.hostname}:8100/eureka/
注意:
register-with-eureka: false #是否将该eureka服务工程注册到服务中(不需要把自己注册到自己服务中)
fetch-registry: false #是否抓取该服务的注册数据
值为false是只不需要把自己注册到自己的服务,如果是搭建集群的话就需要改为true;
defaultZone: http://${eureka.instance.hostname}:8100/eureka/
${eureka.instance.hostname}使用该服务的ip地址;
搭建启动类
@SpringBootApplication
@EnableEurekaServer
public class EurekaServer {
public static void main(String[] args) {
SpringApplication.run(EurekaServer.class,args);
}
}
@EnableEurekaServer在启动类上加上该注解表示开启Eureka注册中心服务
启动
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2csoXWU9kMRRkT4FleYhnRzwEMW1mY1RzRapnTtxkb5ckYplTeMZTTINGMShUYfRHelRHLwEzX39GZhh2css2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xyayFWbyVGdhd3LcV2Zh1Wa9M3clN2byBXLzN3btg3Pn5GcukzN3EzNxAjMyAzNwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
访问地址
看到这个界面就表示已经搭建好了注册中心服务端;
搭建客户端
也要新建一个项目我就建一个order项目
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.1.RELEASE</version>
</parent>
<dependencies>
<!-- web应用程序的依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--springcloud中eureka依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
</dependencies>
注意这里引入的依赖是spring-cloud-starter-netflix-eureka-client
也要创建一个application.yml配置文件
server:
port: 8001 #Tomcat运行端口
eureka:
client:
service-url:
defaultZone: http://localhost:8100/eureka/
spring:
application:
name: eureka-order
defaultZone: 是表示要注册到的位置localhost是本地的,如果是在其他服务器上需要配置真实ip或应用名(spring.applicaion.name)就是用户名了
搭建启动类
@SpringBootApplication
@EnableEurekaClient
public class EurekaOrderClient {
public static void main(String[] args) {
SpringApplication.run(EurekaOrderClient.class,args);
}
}
@EnableEurekaClient:表示是客户端
启动
注意要先启动服务再启动客户端
上面我已经启动了服务端所以直接启动客户端
刷新一下就看看到如下界面:说明已经注册成功了
在我们的订单服务中写一个controller
注意:启动类一定要与controller包同级
访问一下http://127.0.0.1:8001/getOrderServiceApi
效果如下:
以上就是搭建eureka注册中心和向注册中心注册服务的介绍。