美文网首页
EUREKA服务治理

EUREKA服务治理

作者: 高山之水 | 来源:发表于2017-12-06 13:49 被阅读0次

    1、服务治理三个核心点、服务提供者、服务消费者、服务注册中心

    结合Ribbon 服务治理图


    image.png

    服务治理时序图

    image.png

    服务提供者功能:

    1、服务注册
    2、服务同步
    3、服务续约
    4、..

    服务注册:
    服务提供者在启动时候通过rest请求 、将自己注册到Eureka Server上、同时携带自身服务的一些元数据信息、
    Eureka Server接收到这个rest请求后 将这些元数据存储到一个双层结构Map中、其中第一层map 的key是服务名字、第二层key是具体服务实例名、
    相关配置:
    eureka.client.register-with-eureka=true 【默认 true】
    
    服务同步:
    情景:两个相同的服务提供者实例、注册到了不同的服务注册中心、那么由于两个服务注册中心互相注册、服务注册中心会将服务注册信息发送给Eureka-server的其他机器、【还有一种说法是eureka-server 有信息服务功能、server与server之间 有消息同步、不确定这两种说法那个是真是的底层机制、后者是官方的说法、前者是 翟永超书里的说法、也就是说服务同步是由Eureka-server来完成的】
    
    服务续约:
    服务注册后、会维持一个心跳来维持服务不被剔除
    
    相关配置:
    eureka:
      instance:
        status-page-url-path: /info    //服务信息
        health-check-url-path: /health    //服务健康状态
        lease-expiration-duration-in-seconds: 90  //服务失效时间
        lease-renewal-interval-in-seconds: 30  //服务续约持续调用时间
    
    

    服务消费者功能:

    1、获取服务
    2、服务调用
    3、服务下线
    4、..

    获取服务:
    服务消费者会发送一个rest请求获取一个服务列表、Eureka-server会发给client一个只读的服务列表、且该列表会30s刷新一次
    相关配置:
    eureka:
      client:
        fetch-registry: true //默认为true 设为false则无法获取服务
        registry-fetch-interval-seconds: 30  //服务清单刷新时间
    
    服务调用:
    集成Ribbon后、默认会使用轮询机制来调取服务实例信息
    对于实例选择、在eureka中会有Region和Zone概念
    一个Region会有很多Zone、每个服务都需要被注册到一个Zone中、所以每个client对应一个Region和一个Zone、服务调用时候会优先访问Zone下列表、没有在访问同一个Region不同Zone下的服务、
    服务下线:
    当服务实例jinx你给正常的关闭时、client会给server发送一个server、告知 "我要下线了"
    

    服务注册中心功能:

    1、失效剔除
    2、自我保护
    3、..

    失效剔除:server会每隔一段时间【默认90s】剔除不正常实例【主要是没有续约的】
    自我保护:如果同一时间段内由于网络原因大量服务都没有续约、server会继续保持服务列表、而不丢弃这个服务清单列表、也就是触发自我保护机制
    其主要应对是网络忽然中断、大量服务都被剔除导致服务不可访问危险【牺牲了服务高可用性、zookeeper是全部剔除的 zk是服务强高可用性】
    相关配置:
    eureka.server.enable-self-preservation=false //可关闭自我保护机制
    

    关于版本升级
    1.0升级2.0 添加了获取感兴趣服务实例列表功能、毕竟在几千台服务注册中心上、有些服务实例也不是100%用到、节省了client服务实例清单的内存消耗、
    还优化一些获取服务算法、


    image.png

    以下为官方地址:
    https://github.com/Netflix/eureka/wiki

    相关文章

      网友评论

          本文标题:EUREKA服务治理

          本文链接:https://www.haomeiwen.com/subject/uzwkixtx.html