Spring Cloud Basic Two

1. Eureka構成
複数の登録センターが相互に登録する必要があります。
登録センター:

server:
  port: 7001
spring:
  application:
    name: cloud-eureka

eureka:
  instance:
    hostname: eureka.com   #eureka服务端的实例名称
  client:
    register-with-eureka: false     #false表示不向注册中心注册自己。
    fetch-registry: false     #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
    service-url:
      #集群指向其它eureka
      defaultZone: http://localhost:7002/eureka/
    #server:
    #关闭自我保护机制,保证不可用服务被及时踢除
    #enable-self-preservation: false
    #eviction-interval-timer-in-ms: 2000

@EnableEurekaServerアノテーションをレジストリのスタートアップクラスに追加する必要があります。

サーバー構成:

eureka:
  client:
    #表示是否将自己注册进EurekaServer默认为true。
    register-with-eureka: true
    #是否从EurekaServer抓取已有的注册信息,默认为true。单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
    fetchRegistry: true
    service-url:
      #单机版
#      defaultZone: http://localhost:7001/eureka
      # 集群版
      defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
#  instance:
#    instance-id: payment8001
#    #访问路径可以显示IP地址
#    prefer-ip-address: true
    #Eureka客户端向服务端发送心跳的时间间隔,单位为秒(默认是30秒)
    #lease-renewal-interval-in-seconds: 1
    #Eureka服务端在收到最后一次心跳后等待时间上限,单位为秒(默认是90秒),超时将剔除服务
    #lease-expiration-duration-in-seconds: 2

サーバーのスタートアップクラスには@EnableEurekaClientアノテーションを付ける必要があります

2.
なぜユーレカの自己保護メカニズムユーレカの自己保護メカニズムを生み出すのですか?
EurekaClientが正常に実行できないようにするために、EurekaServerネットワークが切断されている場合、EurekaServerはすぐにEurekaClientサービスを削除しません。
自己保護モードとは何ですか?
デフォルトでは、EurekaServerがマイクロサービスインスタンスのハートビートを一定時間受信しない場合、EurekaServerはインスタンスをログアウトします(デフォルトでは90秒)。ただし、ネットワークパーティションの障害(遅延、フリーズ、輻輳)が発生すると、マイクロサービスとEurekaServerが正常に通信できなくなり、マイクロサービス自体が正常であるため、上記の動作は非常に危険になる可能性があります。このマイクロサービスは、現時点では登録解除しないでください。Eurekaは、「自己保護モード」を使用してこの問題を解決します。EurekaServerノードが短時間でクライアントを失いすぎると(ネットワークパーティション障害が発生する可能性があります)、このノードは自己保護モードに入ります。

Eureka自己保護モードでは、Eurekaはサービスレジストリの情報を保護し、マイクロサービス情報をログアウトしません。(CAPのAPのデザイン思想に属します)

Eurekaでは、自己保護メカニズムがデフォルトでオンになっており、構成は次のように閉じられています
。eurekaサーバー(登録センター)

eureka:
  server:
    enable-self-preservation: false           # 关闭自我保护模式(缺省为打开)
    eviction-interval-timer-in-ms: 5000       # 续期时间,即扫描失效服务的间隔时间(缺省为60*1000ms)

eurekaクライアント(サーバー)

eureka:
  instance:
    lease-renewal-interval-in-seconds: 5      # 心跳时间,即服务续约间隔时间(缺省为30s)
    lease-expiration-duration-in-seconds: 10  # 发呆时间,即服务续约到期时间(缺省为90s)
  client:
    healthcheck:
      enabled: true                           # 开启健康检查(依赖spring-boot-starter-actuator)

Eureka 2.0は更新されません

おすすめ

転載: blog.csdn.net/qq_38428298/article/details/108483582