Spring Cloud Eureka 服务治理学习1 简介与系统搭建
Posted 编程圈子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Cloud Eureka 服务治理学习1 简介与系统搭建相关的知识,希望对你有一定的参考价值。
Spring Cloud Eureka
一、 Spring Cloud Eureka 简介
Eureka 是SpringCloud生态里的服务治理工具,提供配置管理、服务发现、断路器、路由、微代理、控制总线、全局锁、决策竞选、集群状态管理等功能支持。
Eureka 是Spring Cloud Netflix微服务套件的一部分,基于Netflix 做了二次封装。
值得注意的是,Spring Cloud应用中可以支持多种不同的服务治理框架,如Netflix Eureka、Consul、Zookeeper,这些服务治理可以无缝切换。
本系列文章主要针对 Eureka 的服务注册、服务发现进行讲解,其功能简单分析如下:
服务注册
业务启动后,每个服务要向注册中心记录自身的ip、端口、方法、参数等信息,注册中心负责监测清单中的服务是否可用,不可用的话就从服务清单中剔除。
服务发现
调用方需要在注册中心咨询可用的服务,并获取所有服务的实例清单。调用方发起调用时,按某种策略选择一个服务进行调用。这个过程就是服务发现的过程。
二、搭建Eureka Server
1. 创建一个新的maven项目
2. POM设置
注意SpringBoot与SpringCloud版本对应关系:
SpringBoot版本 | SpringCloud版本 |
---|---|
1.2.X | Angel |
1.3.X | Brixton |
1.4.X | Camden |
1.5.X | Dalston或者Edgware |
2.0.X | Finchley |
2.1.X | Greenwich.SR2 |
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cn.cloud</groupId>
<artifactId>spring-cloud-eureka</artifactId>
<version>1.0.0</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
</parent>
<properties>
<spring-boot-admin.version>2.1.6</spring-boot-admin.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>
3. 入口类
package com.cn.cloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@EnableEurekaServer
@SpringBootApplication
public class SpringCloudEurekaApplication {
public static void main(String[] args){
SpringApplication.run(SpringCloudEurekaApplication.class,args);
}
}
4. 配置文件
server:
port: 8080
eureka:
instance:
hostname: localhost
client:
# 注册中心不要注册自己
registerWithEureka: false
# 注册中心不需要检索服务
fetchRegistry: false
serviceUrl:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
三、启动项目,打开网页
http://localhost:8080
以上是关于Spring Cloud Eureka 服务治理学习1 简介与系统搭建的主要内容,如果未能解决你的问题,请参考以下文章
基于Spring Cloud的微服务构建学习-3 Spring Cloud Eureka配置详解