0
点赞
收藏
分享

微信扫一扫

Spring Cloud 2.x系列之eureka注册中心单机

一、简介

Spring Cloud Eureka是SpringCloud Netflix项目下的服务治理模块。而SpringCloud Netflix项目是Spring Cloud的子项目之一,主要内容是对Netflix公司一系列开源产品的包装,它为SpringBoot应用提供了自配置的NetflixOSS整合。通过一些简单的注解,开发者就可以快速的在应用中配置一下常用模块并构建庞大的分布式系统。它主要提供的模块包括:服务发现(Eureka),断路器(Hystrix),智能路由(Zuul),客户端负载均衡(Ribbon)等。

1、        新建一个maven项目:sc-eureka-server,其pom.xml配置如下:

 

<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>spring-cloud</groupId>
    <artifactId>sc-eureka-server</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>sc-eureka-server</name>
    <url>http://maven.apache.org</url>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.4.RELEASE</version>
    </parent>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Finchley.RELEASE</version>
                <type>pom</type>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>

    <dependencies>
        <!-- 
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-eureka-server</artifactId>
            <version>1.4.5.RELEASE</version>
        </dependency> 
        -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
            <version>2.0.1.RELEASE</version>
        </dependency>

    </dependencies>
</project>

 

备注:

       主要引入eureka server所需的starter

<dependency>

        <groupId>org.springframework.cloud</groupId>

         <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>

</dependency>

 

Spring Cloud 1.x之前的eureka server的starter为

<dependency>

    <groupId>org.springframework.cloud</groupId>

   <artifactId>spring-cloud-starter-eureka-server</artifactId>

   <version>1.4.5.RELEASE</version>

</dependency>

在http://mvnrepository.com中央仓库spring-cloud-starter-eureka-server已经被标志为过期,推荐使用spring-cloud-starter-netflix-eureka-server

       

Spring Cloud 2.x系列之eureka注册中心单机_微软

                   

2、        添加配置文件bootstrap.yml或者application.yml

 

spring:

  application:

    name: sc-eureka-server

server:

  port: 5001

eureka:

  instance:

    hostname:127.0.0.1

  client:

    #由于该应用为注册中心,所以设置为false,代表不向注册中心注册自己

    registerWithEureka: false

    #由于注册中心的职责就是维护服务实例,它并不需要去检索服务,所以也设置为false

    fetchRegistry: false

    serviceUrl:

      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

备注:也可以使用application-dev.yml配置文件,但是添加如下配置:-Dspring.profiles.active=dev

 

Spring Cloud 2.x系列之eureka注册中心单机_中间件_02

 

3、        编写启动程序

 

package sc.eureka.server;

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

@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {

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

}

 

 

4、        启动程序,并验证启动成功

方式一:

     

Spring Cloud 2.x系列之eureka注册中心单机_ribbon_03

方式二:

Spring Cloud 2.x系列之eureka注册中心单机_eureka_04

举报

相关推荐

0 条评论