SpringCloud入门(一)之Eureka注册中心

什么是Eureka

Eureka是Spring Cloud Netflix微服务套件中的一部分。
Eureka分为服务端和客户端。

  • Eureka服务端也被称为服务注册中心。用于提供服务注册、发现功能。
  • Eureka客户端被服务提供者和服务消费者集成,实现了服务心跳维持、服务查询等功能。

启动Eureka服务中心实战

完整参考代码github

  1. 引入Eureka依赖;
  2. 使用注解@EnableEurekaServer启动注册中心;
  3. 关闭服务注册中心的客户端功能。

    ps:因为注册中心会把自己也当成一个服务,并向注册中心注册。但是由于他自己又还没有启动完全,所以服务注册会失败,从而又影响他的继续启动,陷入死循环;所以需要关闭注册中心的客户端功能,即禁止他去注册中心注册。

引入Eureka依赖

在pom文件加入以下依赖

1
2
3
4
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

ps:这里没有指定版本,是因为使用spring-cloud-dependencies,版本号Greenwich.M3,读者如果没有引用spring-cloud-dependencies的话,可以自行给Eureka依赖加上版本号2.1.0.M3

使用注解@EnableEurekaServer启动注册中心;

在SpringBoot的启动类中加入注解

1
2
3
4
5
6
7
8
9
10
11
12
13
14
package com.markey.test.eurekatest;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer
public class EurekatestApplication {

public static void main(String[] args) {
SpringApplication.run(EurekatestApplication.class, args);
}
}

关闭服务注册中心的客户端功能

在SpringBoot的配置文件中增加以下配置项

1
2
3
4
# 禁止服务发现
eureka.client.register-with-eureka=false
#禁止服务检索
eureka.client.fetch-registry=false

启动服务

运行SpringBoot,如果正常启动成功的话 ,可以通过浏览器访问注册中心。

注册中心启动成功,监听端口号为8080
注册中心启动成功

访问服务注册中心
访问服务注册中心