spring cloud 搭建注册中心Eureka(单节点)

服务中心

服务中心又称注册中心,管理各种服务功能包括服务的注册、发现、熔断、负载、降级等,比如dubbo admin后台的各种功能。

Eureka是Netflix开源的一款提供服务注册和发现的产品,它提供了完整的Service Registry和Service Discovery实现。也是springcloud体系中最重要最核心的组件之一。

Eureka由两个组件组成:Eureka服务器和Eureka客户端。

Eureka服务器用作服务注册服务器。Eureka客户端是一个java客户端,用来简化与服务器的交互、作为轮询负载均衡器,并提供服务的故障切换支持。Netflix在其生产环境中使用的是另外的客户端,它提供基于流量、资源利用率以及出错状态的加权负载均衡。

单节点Eureka

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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.3.RELEASE</version>
    </parent>


    <groupId>com.springcloud</groupId>
    <artifactId>eureka</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>eureka</name>
    <description>Demo project for Spring Boot</description>


    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <spring-cloud.version>Greenwich.RELEASE</spring-cloud.version>
    </properties>


    <dependencies>

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


    </dependencies>


    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>
    

spring cloud项目关键是要添加spring-cloud-dependencies

spring boot 2.1.x - 2.1.9 对应版本是 Greenwich.RELEASE

Eureka server依赖

spring-cloud-starter-netflix-eureka-server(推荐使用)
spring-cloud-starter-eureka-server(不推荐)

 application.yml

spring:
  application:
   name: Service     #应用名称,也是服务注册的名称

server:
  port: 8000         #开启端口

eureka:
  instance:
    hostname: localhost     #主机名
  client:
    serviceUrl:
      defaultZone: http://localhost:8000/eureka/    #与Eureka Server交互的地址,查询服务和服务注册都需要依赖这个地址
                                                    #默认为http://localhost:8761/eureka,  多个地址用","分割
    fetch-registry: false                           #是否将自己注册到Eureka Server 默认为true
    register-with-eureka: false                     #是否从Eureka Server查询注册信息

Application启动类

@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication{

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

}

启动后,浏览器访问:http://localhost:8000

原文地址:https://www.cnblogs.com/yhood/p/11558288.html