`

[Spring Cloud]Eureka服务器配置

阅读更多

除了那些基本依赖,要添加:(旧版)

 <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-eureka-server</artifactId>
            <version>1.4.0.RELEASE</version>
        </dependency>

 不要忘记<version>,否则在intellij idea构建后里面会变成unknown,然后导入依赖失败。

注意,最新版本console提示spring-cloud-starter-eureka-server过期了,建议更换成:(新版)

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

 

 

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

 这个version是要根据

spring-boot-starter-parent

 的版本而确定的

 

关键不要漏了:(所有的资料都没有提到需要配置这个,可能旧的版本是不需要的,但是新的版本没有是不行的)

<repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/libs-milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

 之前一直缺少配置这个,导致一直报错,启动不了tomcat,按照spring.io里面的guide配置上这个就可以了。

 

参考官方的guide:https://projects.spring.io/spring-cloud/

 

一.server properties配置:

eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false

or yaml:

server:
  servlet:
    context-path: /demo
  port: 1111

 

 

client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka
 *注意,最新版本的service url不是旧版的serviceUrl,而是service-url,defalutZone一样,不要写成其他格式,eureka只会识别这种,而且代码提示是不会显示的.

 *这里配置错误的话,客户端是会一直注册失败的.

 

参考源码:https://github.com/spring-cloud/spring-cloud-netflix/blob/ab87e735adeb3875a03dc143e92a3fe2c958fd63/spring-cloud-netflix-eureka-client/src/main/java/org/springframework/cloud/netflix/eureka/EurekaClientConfigBean.java#L237

里面就定义了格式:

public static final String DEFAULT_ZONE = "defaultZone";

 根据以上定义,打开server eureka的url: http://localhost:1111/demo,不是default zone的url

 

二.client配置:

除了基本的spring cloud依赖,还要:

<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
			<version>1.4.0.RELEASE</version>
		</dependency>

 properties:

spring.application.name=hello-service

server.servlet.context-path=/client
server.port=8222

eureka.client.service-url.defaultZone=http://localhost:1111/demo/eureka

 defaultZone要和server的一样,为什么有/demo,是因为server配置了context-path: /demo

同理,如果server也配置并使用了application-dev.yaml那么client的defaultZone就需要跟着更换端口等配置了

成功后可以在server 的eureka里面看到client项目.

 

注意事项:

因为依赖包较多,build起时可能出现找不到classpath的情况,只需要clean一下maven即可,如何在intellij里面clean maven可以参考另外一篇文章.

参考官方guide:https://spring.io/guides/gs/service-registration-and-discovery/

分享到:
评论

相关推荐

    spring cloud eureka(免费下载)

    - 配置`application.yml`文件,设定Eureka服务器的基本信息,例如服务端口、服务实例名称、是否开启自我保护模式等。通常,你需要配置以下内容: ```yaml server: port: 8761 # Eureka Server端口 eureka: ...

    SpringCloud Eureka集群项目

    2. **配置文件差异化**:为了区分不同节点,每个Eureka服务器的配置文件(如`application.yml`或`bootstrap.yml`)中需要有唯一的实例ID(`instanceId`)和不同的端口号,确保不会发生端口冲突。同时,它们需要配置...

    Spring Cloud Eureka Server

    9. **与其他Spring Cloud组件的集成**:Eureka Server可以很好地与Spring Cloud其他组件集成,如Zuul或Netflix Ribbon用于负载均衡,Hystrix用于断路器,Spring Cloud Config用于配置管理等。 10. **监控和管理**:...

    springcloud eureka服务注册中心 最新版本2.x.x

    SpringCloud Eureka是微服务架构中的关键组件,它作为一个服务注册与发现的工具,使得服务之间的调用变得简单。在最新版本2.x.x中,Eureka提供了更稳定、高效的特性来支持大规模分布式系统的构建。 首先,让我们...

    Spring Cloud eureka服务注册DEMO

    在Spring Boot应用中,我们可以通过`application.yml`或`application.properties`配置Eureka的相关参数,如服务实例的名称、Eureka服务器的URL、服务心跳间隔等。 7. **Ribbon和Feign的使用**: Spring Cloud提供...

    springcloud Eureka源码解读

    SpringCloud Eureka是Spring Cloud生态系统中的一个关键组件,主要用于实现服务发现。Eureka是一个基于REST的服务,用于定位运行在分布式系统中的服务,以达到高可用和容错的目的。本篇文章将深入Eureka的源码,帮助...

    Spring Cloud Eureka + Spring Cloud Gateway + Spring Cloud Zipkin

    项目中包含的SpringCloud中文文档将为开发者提供详细的指导,帮助他们理解和使用这些组件。文档通常会涵盖安装配置、基本使用、高级特性以及最佳实践等内容,是学习和实施微服务架构的重要参考资料。 总之,Spring ...

    Spring Cloud Eureka 常用配置解析.doc

    ### Spring Cloud Eureka 常用配置解析 #### 一、引言 Spring Cloud Eureka 是一个基于 REST 服务的分布式服务治理框架,主要用于服务发现与注册。它为微服务架构提供了一种易于实现的服务发现解决方案。在 Spring...

    springcloud Eureka源码解读.docx

    1. **初始化配置**:通过`org.springframework.cloud.netflix.eureka.server.EurekaServerAutoConfiguration`完成服务端的初始化配置。 2. **Peer Eureka节点处理**: - `peerEurekaNodes.start();`:启动Peer ...

    spring cloud eureka示例代码

    1. **启动Eureka Server**:首先,我们需要配置并启动Eureka服务器。这可以通过创建一个Spring Boot应用,并添加`@EnableEurekaServer`注解来实现。Eureka Server会监听来自客户端的注册和心跳信息。 2. **配置...

    Spring Cloud Eureka源码分析

    Spring Cloud Eureka是Netflix公司开源的一个服务发现组件,它是基于REST的服务,用于在分布式系统中定位服务,以实现负载均衡和中间层服务器的故障转移。Eureka的设计目标是提供一种高效且可靠的“服务发现”机制,...

    spring cloud eureka 注册中心客户端

    在Spring Boot项目中,我们需要引入Eureka客户端依赖,并配置Eureka服务器的地址。在`pom.xml`中添加Maven依赖: ```xml &lt;groupId&gt;org.springframework.cloud &lt;artifactId&gt;spring-cloud-starter-netflix-...

    springcloud-eureka-server.zip

    本文将围绕"springcloud-eureka-server.zip"这个项目,深入探讨SpringCloud Eureka Server的核心功能、配置优化以及实际应用。 一、Eureka Server概述 Eureka是Netflix开源的一个基于REST的服务,用于定位服务,以...

    springcloud-eureka.zip

    1. **Eureka Server**:Eureka服务器是Eureka的核心,它是一个分布式的服务注册表,每个服务实例都会向Eureka Server注册自己的信息,包括服务ID、IP地址、端口等。同时,Eureka Server也提供服务查询接口,供其他...

    springcloud整合Eureka的demo

    SpringCloud是微服务架构中的一个流行框架,它包含多个子项目,用于解决分布式系统中的服务发现、配置管理、熔断机制等问题。Eureka是SpringCloud生态中的一个关键组件,主要负责服务注册与发现。本教程将详细介绍...

    springcloud注册中心Eureka集群示例代码.zip

    在这个示例中,我们有 `springcloud-eureka` 和 `springcloud-eureka2` 两个 Eureka 服务器实例,它们共同构成了 Eureka 集群。这样做的目的是提高服务注册中心的高可用性,避免单点故障。配置时,每个 Eureka ...

    spring cloud eureka

    **客户端组件**:Spring Cloud提供了Eureka Client,这是一个Java库,包含两个部分:一是服务注册,二是服务发现。服务注册部分负责将服务实例注册到Eureka Server,服务发现部分则负责从Eureka Server获取服务实例...

    spring cloud eureka demo菜鸟入门

    **Spring Cloud Eureka 入门指南** 在分布式系统中,服务发现是至关重要的一个环节,Spring Cloud Eureka 就是用来解决这一问题的组件。Eureka 是 Netflix 开源的一个基于 REST 的服务,它用于定位服务,以实现云端...

    Spring Cloud 之 Eureka集群搭建指南-源码

    配置`spring.cloud.service-discovery.eureka.instance-id`为唯一的实例ID,以便Eureka集群识别。 7. **服务消费者发现** 同样创建一个服务消费者应用,通过Eureka Client发现并调用服务提供者。使用`@...

    SpringCloud eureka mybatis zuul feign

    在微服务架构中,SpringCloud是一个非常流行的框架集合,它为开发者提供了构建分布式系统所需的工具,包括服务发现、配置管理、断路器、智能路由、微代理等。在这个项目中,我们关注的是SpringCloud Eureka、Zuul、...

Global site tag (gtag.js) - Google Analytics