• SpringCloud:Eureka 配置心跳机制


    Server服务端

    server:
      port: 8761
    eureka:
      client:
        #实例是否在eureka服务器上注册自己的信息以提供其他服务发现,默认为true
        register-with-eureka: false
        #此客户端是否获取eureka服务器注册表上的注册信息,默认为true
        fetch-registry: false
      server:
        #开启自我保护模式(开启状态下服务停掉eureka不会立即清除掉宕掉的服务,所以false)
        enable-self-preservation: false
        #清理无效节点,默认60*1000毫秒,即60秒
        eviction-interval-timer-in-ms: 5000

     自我保护讲解:

    首先对Eureka注册中心需要了解的是Eureka各个节点都是平等的,没有ZK中角色的概念, 即使N-1个节点挂掉也不会影响其他节点的正常运行。

    默认情况下,如果Eureka Server在一定时间内(默认90秒)没有接收到某个微服务实例的心跳,Eureka Server将会移除该实例。但是当网络分区故障发生时,微服务与Eureka Server之间无法正常通信,而微服务本身是正常运行的,此时不应该移除这个微服务,所以引入了自我保护机制。

    由于Eureka拥有自我保护机制,当其注册表里服务因为网络或其他原因出现故障而关停时,Eureka不会剔除服务注册,而是等待其修复。这是AP的一种实现。 
    为了让其有精准的 CP健康检查,可以采取让其剔除不健康节点。

    Client客户端

    spring:
      application:
       name: ek-provider
    eureka: 
      instance:
        #eureka客户端需要多长时间发送心跳给eureka服务器,表明他仍然或者,默认30秒
        lease-renewal-interval-in-seconds: 5
        #eureka服务器在接受到实力的最后一次发出的心跳后,需要等待多久才可以将此实力删除
        lease-expiration-duration-in-seconds: 10
        metadata-map: 
          company-name: eureka
      client: 
        #表示eureka client间隔多久去拉取服务器注册信息,默认为30秒
        registry-fetch-interval-seconds: 30
        #表示eureka client间隔多久去拉取服务器注册信息,默认为30秒
        registry-fetch-interval-seconds: 30registry-fetch-interval-seconds: 30
        serviceUrl: 
          defauiltZone: http://localhost:8761/eureka/

    文章转载至:https://blog.csdn.net/cuiwenb/article/details/79800054

  • 相关阅读:
    android bitmap 防止 内存溢出
    析android应用增量升级(差分升级)
    android 数据库查询中使用索引-大幅提高数据库操作速度
    android 插件框架
    android悬浮view-FloatingView
    android 消息分发框架 otto
    修改了USER_AGENT还是不能抓取到数据怎么办?
    找不到指定文件scrapy,在pycharm中运行程序出现错误
    scrapy抓取豆瓣网信息时报错提醒403[scrapy.spidermiddlewares.httperror] INFO
    slidetoshutdown电脑滑动关机命令失效了怎么办?
  • 原文地址:https://www.cnblogs.com/nhdlb/p/12968814.html
Copyright © 2020-2023  润新知