项目地址:
https://github.com/zackzhangCN/SpringCloudDemo
##########################################################
创建SpringCloudExample项目
项目作为父工程存在, pom文件打包为pom
-
项目pom文件引入springboot父依赖
<packaging>pom</packaging>
<name>SpringCloudExample</name>
<!--parent-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
<relativePath/>
</parent>
<!--字符集UTF-8, JDK版本1.8-->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencyManagement>
<dependencies>
<!--springCloud的版本-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.SR3</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--web版本-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.0.3.RELEASE</version>
</dependency>
<!--eureka server版本-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
<version>2.0.3.RELEASE</version>
</dependency>
</dependencies>
</dependencyManagement>
######################################################
在SpringCloudExample项目下创建Example_Eureka1模块
-
编辑Example_Eureka1模块的pom文件
引入eureka server依赖
<!--jar包-->
<packaging>jar</packaging>
<dependencies>
<!--引入eureka server依赖, 父工程pom文件已声明eureka server版本-->
<!--eureka server已经包含了web依赖, 无需再引入-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
</dependencies>
-
编写Example_Eureka1模块的启动类
package cn.zack;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
/**
* @author zack
* 开启eureka server
*/
@SpringBootApplication
@EnableEurekaServer
public class Example_Eureka1_Application {
public static void main(String[] args) {
SpringApplication.run(Example_Eureka1_Application.class, args);
}
}
-
编辑Example_Eureka1模块的配置文件
server:
port: 8761
spring:
application:
name: eureka-server
eureka:
instance:
# 当前实例的主机名
hostname: eureka1
server:
# 关闭注册中心的自我保护机制
enable-self-preservation: false
# 服务续约时间(扫描失效服务的时间间隔)
eviction-interval-timer-in-ms: 5000
client:
# 是否将自身注册到eureka server(默认为true)
register-with-eureka: true
# 是否从eureka server获取注册信息(默认为true),单机版eureka不需要同步其他eureka server的信息
fetch-registry: true
# eureka server交互地址,查询和注册服务都需要依赖这个地址,多个地址间使用,分割
service-url:
# 自身eureka server的注册地址
defaultZone: http://localhost:8761/eureka/
-
启动Example_Eureka1, 访问localhost:8761
eureka server 正常启动, eureka server本身也注册到了服务列表作为一个服务, 从控制台可以看到这个注册到eureka server的实例每5秒向注册中心发送一次心跳包.