一、服务治理:Spring Cloud Eureka

核心内容:

  1. 构建服务注册中心
  2. 服务注册于服务发现
  3. Eureka的基础架构
  4. Eureka的服务治理机制
  5. Eureka的配置


服务治理:主要是用来实现各个微服务实例的自动化注册与发现

服务注册:在服务治理框架中,通常会构建一个注册中心,每个服务单元向注册中心登记自己的提供的服务,将主机与端口号、版本号、通信协议等一些信息告诉给注册中心,注册中心按服务名分类组织服务清单。 

  eg:  

另外,服务注册中心还需要以心跳的方式去监测清单中的服务是否可用,若不可用需要从服务清单中踢出

服务发现:由于在服务治理框架下运作,服务间的调用不再通过制定具体的实例地址来实现,而是通过向服务名发起请求调动实现。

  步骤:1、调用方向服务注册中心获取所有服务的实例清单

     2、轮询取出清单中的一个进行服务调用(负载均衡)



搭建服务注册中心:

  1、添加依赖:

<dependencyManagement>   <dependencies>      <dependency>         <groupId>org.springframework.cloud</groupId>         <artifactId>spring-cloud-dependencies</artifactId>         <version>Finchley.SR1</version>         <type>pom</type>         <scope>import</scope>      </dependency>   </dependencies></dependencyManagement>    --springboot版本和springCloud版本需要配对哟
<dependency>   <groupId>org.springframework.cloud</groupId>   <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency>
  2、通过@EnableEurekaServer注解启动一个服务注册中心,提供给其他应用进行对话

  3、添加配置
    server.port=1111    eureka.instance.hostname=localhost    eureka.client.register-with-eureka=false  --由于该应用为注册中心,所以设置为false,代表不想注册中心注册自己    eureka.client.fetch-registry=false  --由于注册中心的职责就是维护服务实例,它并不需要检索服务,所以也设置为false    eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/  4、启动项目访问:http://localhost:1111



注册服务提供者  把一个springBoot应用加入Eureka的服务治理体系中去1、新建一个module2、加入
<dependency>   <groupId>org.springframework.cloud</groupId>   <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency>3、在启动类上加上@EnableEurekaClient注解4、添加配置文件
spring.application.name=hello-serviceeureka.client.service-url.defaultZone=http://localhost:1111/eureka/


高可用注册中心  在Eureka的服务治理设计中,所有节点既是服务提供方,也是服务消费方,服务注册中心也不例外。  Eureka Server的高可用实际上就是将自己作为服务,想其他服务注册中心注册自己(相互注册)搭建:

有了多个注册中心之后,修改服务提供者和服务消费者:
eureka.client.service-url.defaultZone=http://localhost:1111/eureka/,http://localhost:1112/eureka/

现在已经有了服务注册中心和服务消费者,现在需要一个服务提供者。服务发现的任务由Eureka的客户端完成,服务消费的任务由Ribbon完成和原来的hello-service基本一致,在依赖中加入
<dependency>   <groupId>org.springframework.cloud</groupId>   <artifactId>spring-cloud-starter-netflix-ribbon</artifactId></dependency>在配置类中加入RestTemplate,并加上@LoadBalanced用户负载均衡最后,调用hello-service里面的服务
@Autowired
    private RestTemplate restTemplate;

    @RequestMapping("/ribbon-consumer")
    public String helloConsumer(){
        return restTemplate.getForEntity("http://hello-service/hello", String.class).getBody();
    }

启动ribbon-consumer,请求两次/ribbon-consumer,可以看到在两个控制台一次打印信息

在ribbon-consumer还能看到被调用者信息



一、服务治理:Spring Cloud Eureka

原文地址:https://www.cnblogs.com/culture/p/9543882.html

时间: 2024-11-06 07:28:12

一、服务治理:Spring Cloud Eureka的相关文章

基于Spring Cloud的微服务构建学习-3 服务治理-Spring Cloud Eureka之高可用注册中心

什么叫高可用 高可用一般指服务的冗余,一个服务挂了,可以自动切换到另一个服务上,不会影响到客户体验. 高可用注册中心 在微服务架构这样的分布式环境中,我们需要充分考虑发生故障的情况,所以在生产环境中必须对各个组件进行高可用部署,对于微服务如此,对于服务中心也一样. Eureka Server的设计一开始就考虑了高可用问题,在Eureka的服务治理设计中,所有节点既是服务提供方,也是服务消费方,服务注册中心也不例外.在前一篇随笔中用到过这样的配置: eureka.client.register-w

Spring Cloud(二):服务治理——Spring Cloud Eureka

服务治理是微服务架构中最为核心和基础的模块,主要作用是实现各个微服务实例的自动化注册和发现.Spring Cloud Eureka是Spring Cloud Netflix微服务套件中的一部分,基于Netflix EureKa做了二次封装,主要负责微服务架构中的服务治理功能. Eureka的服务发现包含两大组件,服务端发现组件(Eureka Server)和客户端发现组件(Eureka Client).服务端发现组件也被称为服务注册中心,主要提供了服务的注册功能,客户端发现组件主要用于处理服务的

微服务框架-Spring Cloud简介(一)

Spring Cloud是一个微服务框架,相比Dubbo等RPC框架, Spring Cloud提供的全套的分布式系统解决方案. Spring Cloud对微服务基础框架Netflix的多个开源组件进行了封装,同时又实现了和云端平台以及和Spring Boot开发框架的集成. Spring Cloud 为开发者提供了在分布式系统(配置管理,服务发现,熔断,路由,微代理,控制总线,一次性token,全居琐,leader选举,分布式session,集群状态)中快速构建的工具,使用Spring Clo

1 Spring Cloud Eureka服务治理

注:此随笔为读书笔记.<Spring Cloud微服务实战> 什么是微服务? 微服务是将一个原本独立的系统拆分成若干个小型服务(一般按照功能模块拆分),这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进行通信协作.每个微服务维护自身的数据存储.业务开发.自动化测试案例以及独立部署机制.维护自身的数据存储称为数据管理的去中心化.由于数据管理的去中心化,各个微服务的数据一致性成为一个难题,因此,需要强调的是各个服务之间进行无"事务"的调用.

基于Spring Cloud的微服务构建学习-3 服务治理:Spring Cloud Eureka

基于Spring Cloud的微服务构建学习-3 服务治理:Spring Cloud Eureka 什么是服务治理 服务治理可以说是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册与发现. 为什么需要服务治理模块 在最初构建微服务系统的时候可能服务并不多,我们可以通过做一些静态配置来完成服务调用 此时看着一切都还正常. 随着项目逐渐接近尾声,维护人员需要维护的服务越来越多,越来越复杂,最终形成大量的配置文件,维护将会变得越来越困难.此时,微服务应用实例自动化管理框架变得

Spring cloud Eureka 服务治理

服务之类是微服务架构中最为核心的基础模块,它主要用来实现各个微服务实例的自动化注册和发现. 1. 服务注册 在服务治理框架中,通常会构建一个注册中心,每个服务单元向注册中心登记自己提供的服务,将主机.端口.版本号.通信协议等一些 附加信息告知服务中心,注册中心按服务名分类组织服务清单. 2. 服务发现 由于在服务治理框架下运作,服务间的调用不在通过指定具体的地址实例地址来实现,而是通过想服务名发起请求调用. 使用Spring Cloud Eureka 来搭建服务注册中心 <1>. 首先我们通过

第三章 服务治理:Spring Cloud Eureka

Spring Cloud Eureka是Spring Cloud Netflix 微服务套件中的一部分,它基于Netflix Eureka做了二次封装,主要负责完成微服务架构中的服务治理功能.Spring Cloud 通过为Eureka增加了Spring Boot风格的自动化配置,我们只需通过引入依赖和注解配置就能让Spring Boot构建的微服务应用轻松的与Eureka服务治理体系进行整合. 服务治理: 服务治理可以说是微服务架构中最为核心和基础的模块,主要用来实现各个微服务实例的自动化注册

Spring Cloud微服务实战-服务治理(Spring Cloud Eureka)

1. Spring Cloud Eureka简介 Spring Cloud Eureka主要用来完成微服务中的服务治理.是基于Netflix Eureka做的二次封装,Spring Cloud通过为Eureka增加了Spring Boot风格的自动化配置,我们只需要通过引入依赖和注解配置就能让Spring Boot构建的微服务应用轻松地与Eureka服务治理体系进行整合. 2. 服务治理背景 在微服务开发工程中,整个系统微服务应用非常多,并且随着业务的发展,微服务的数量在不断增加.而微服务之间的

微服务:整合 Spring cloud Eureka - 服务治理机制

一.简介 在体验了Spring Cloud Eureka 通过简单的注解配置就能实现强大的服务治理功能之后,我们可以进一步了解一些Eureka基础架构中各个元素之间的通信行为,以此来更加深入的理解Eureka服务治理体系是如何运转起来的. 二.微服务基础架构拓扑图 1.“Eureka Server 服务注册中心-1” 和 “Eureka Server 服务注册中心-2” ,他们相互注册成为高可用集群. 2.服务提供者启动两个实例,一个注册到“Eureka Server 服务注册中心-1” 上,另