zoukankan      html  css  js  c++  java
  • 001服务注册与发现Eureka

    1、POM配置

      和普通Spring Boot工程相比,仅仅添加了Eureka Server依赖和Spring Cloud依赖管理

    <dependencies>
      <!--添加Eureka Server依赖-->
      <dependency>     <groupId>org.springframework.cloud</groupId>     <artifactId>spring-cloud-starter-eureka-server</artifactId>   </dependency> </dependencies> <dependencyManagement>   <dependencies>
        <!--Spring Cloud依赖版本管理-->     <dependency>       <groupId>org.springframework.cloud</groupId>       <artifactId>spring-cloud-dependencies</artifactId>       <version>Dalston.SR1</version>       <type>pom</type>       <scope>import</scope>     </dependency>   </dependencies> </dependencyManagement>

    02、使能Eureka Server

    @SpringBootApplication
    @EnableEurekaServer//使能Eureka Server服务
    public class Application {
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    }

    03、src/main/resources工程配置文件

      a)仅启动单台Eureka Server服务器时,application.yml配置文件内容如下

    spring:
      application:
        name: eureka-server  #应用名,服务消费者通过此名访问服务提供者
    server:
      port: 1000          # 指定该Eureka实例的端口
    eureka:
      instance:
        hostname: discovery       # 指定该Eureka实例的主机名
      #每个Eureka Server同时也启动一个Eureka Client,
      client:
        registerWithEureka: false   #不将此Eureka Client注册到Eureka Server
        fetchRegistry: false #此Eureka Client不从Eureka Server获取注册实例
      
    serviceUrl:
       defaultZone: http://discovery:1000/eureka/ #defaultZone不能写成default-zone
     

      b)Eureka Server启动2台时

        application-peer1.yml配置文件内容如下

    spring:
      application:
        name: eureka-server  #应用名
    server:
      port: 1001  #服务启动端口
    eureka:
      server:
        enable-self-preservation: false  #不使能自我保护功能。15min内,失效的服务超过85%时,不进入保护模式
      instance:
        hostname: peer1  #主机名字,须要在C:/Windows/System32/drivers/etc/hosts或Linux中/etc/hosts中添加映射127.0.0.1 peer1
      client:
        serviceUrl:
          defaultZone: http://peer2:1002/eureka/  #此Eureka Client注册到的Eureka Server的地址

        application-peer2.yml配置文件内容如下

    spring:
      application:
        name: eureka-server  #应用名字
    server:
      port: 1002  #服务启动端口
    eureka:
      server:
        enable-self-preservation: false  #不使能自我保护功能。15min内,失效的服务超过85%时,不进入保护模式
      instance:
        hostname: peer2  #主机名字,须要在C:/Windows/System32/drivers/etc/hosts或Linux中/etc/hosts中添加映射127.0.0.1 peer1
      client:
        serviceUrl:
          defaultZone: http://peer1:1001/eureka/  #此Eureka Client注册到的Eureka Server的地址

    04、其它常见配置项

      Eureka Server相关

        剔除周期:eureka.instance.lease-expiration-duration-in-seconds=90  连续3次没收到Eureka Client实例的心跳,此Eureka Client实例会在扫描时被剔除

        扫描过期服务周期:eureka.server.eviction-interval-timer-in-ms=60  没60s扫描一次过期的Eureka Client实例,若示例超过90s无心跳,则剔除

        自我保护开关:eureka.server.enable-self-preservation=true  30min内85%服务被剔除,则进入保护状态。保护状态内,不在剔除服务实例

      Eureka Client相关

        报告心跳周期:eureka.instance.lease-renewal-interval-in-seconds=30  Eureka Client每隔30s向注册的Eureka Server报告心跳

        服务更新周期:eureka.client.registry-fetch-interval-seconds=30  Eureka Client每隔30s更新服务提供者的可用清单

  • 相关阅读:
    第4課 部屋に机といずがあらます。
    (转)三层结构设计与ERP部署规划
    多线程的一个问题(同步事件和等待句柄)转
    C#操作xml小结(转)
    再论Assembly Registration Tool (Regasm.exe)
    再论Type Library Importer (Tlbimp.exe)
    Blittable and NonBlittable Types
    再论Importing a Type Library as an Assembly
    .Net Remoting(基本操作) Part.2 (转)
    Monitor类示例(转)
  • 原文地址:https://www.cnblogs.com/geniushuangxiao/p/7219492.html
Copyright © 2011-2022 走看看