前言:

       SpringCloud是基于springBoot的一整套实现微服务的框架.Eureka为springCloud架构中首选推荐的服务治理组件.从分布式或者微服务的角度来讲,将一个大的项目划分成许多小的项目,首当其冲的第一个问题就是子项目之间如何通讯的问题.Eureka是解决微服务架构中服务实例维护的一种技术解决方案之一.具体内容如下:

正文:

  1.what

        Eureka是一个服务注册和发现的组件,最初开始用于亚马逊公司旗下的云计算服务平台(AWS),Eureka分为Eureka Client和Eureka Server,专门用于给其他服务注册的注册中心称之为Eureka Server,注册到Eureka Server上的服务称之为Eureka Client.

    2.why 

       >Eureka完全开源,是netflix公司的开源产品,经过了生产环境的检验和历时三年的不断迭代,在功能上和性能上相对而言都比较稳定.

       >Eureka是springColud官方推荐首选的服务治理组件,其可与springCloud架构中其他组件无缝对接.

       >Eureka与客户端负载均衡Ribbo,熔断器Hystix,服务网关Zuul等组件,很容易实现负载均衡/熔断/智能路由等功能,形成Netflix OSS组件,这些组件是SpringCloud的基础组件和核心组件.

   3.architecture 

        在Eureka架构中,主要包含三种角色:

               >registry service: eureka server,用于服务注册与发现的注册中心.

               >provider service:服务提供者,eureka client

               >consumer service:服务消费者,eureka client

        服务消费的基本过程:

                服务提供者向注册中心注册,将自己的服务信息(IP和实例名)注册到注册中心上,服务消费者也向注册中心注册,同时获取一份服务实例列表信息,通过httpClient远程调用的方式调度自己从列表信息中选择要调度的服务 .

Spring Cloud Eureka安装包下载 springcloud的eureka_Cloud

    4.governance mechanisms

          服务提供者:

               >服务注册:当服务提供者启动的时候,通过API的方式向注册中心注册,附带自己的相关元数据信息.

               >服务续约:注册完毕之后,服务提供者会自动维护一个心跳,用来告诉注册信息,我还活着.

               >服务下线:正常进行服务关闭操作时,服务提供者通过发送API请求告诉服务注册中心,我要下线了.

         服务消费者:

               >获取服务:服务消费者启动服务的时候,通过发送API的请求,向注册中心注册,同时获取一份服务实例列表信息,比如服务实例名和IP等.

               >服务调用: 从获取的服务实例列表信息根据服务实例名和IP等信息选择要调度的服务进行调用.同处于一个zone的服务提供方,优先调用.

          服务注册中心:

                 >失效剔除:默认每隔60秒将当前清单中超时90秒的没有续约的服务剔除出去

                 >自我保护:Eureka server在运行期间,会统计心跳失败的比例在15分钟内是否低于85%.Eureka server会将当前的实例注册信息保护起来,不让其过期.

结语:

                                                                      宝剑锋从磨砺出,梅花香自苦寒来.

Spring Cloud Eureka安装包下载 springcloud的eureka_服务提供者_02