Spring Cloud Eureka是Spring Cloud Netflix微服务套件中的一部分,主要负责完成微服务架构中的服务治理功能

什么是服务治理?

服务治理是微服务架构中最为核心最为基础的模块,它主要用来实现各个微服务实例的自动化注册与发现。

为什么在微服务架构中,我们非常需要服务治理模块?

随着业务的复杂度越来越高以及微服务应用的数量不断增加,我们的静态配置就会越来越难以维护。并且面对不断发展的业务,我们的集群规模,服务的位置和服务的命名等都有可能发生变化,如果这种情况下还是通过手工维护,就极易发生错误或是命名冲突问题。同时,维护这类静态内容也将消耗大量人力。

什么是服务注册?

在于服务治理框架中,通常会构建一个服务注册中心,每个服务单元将自己的主机与端口号、版本号、通信协议等一些附加信息告知注册中心,注册中心按服务名分类组织服务清单,从而完成服务注册。

什么是服务发现?

服务调用方在调用服务提供方的接口时,并不知道服务实例的具体位置。因此服务调用方需要向服务注册中心咨询服务,并获取所有服务的实例清单,以实现对具体服务实例的访问,这就是我们后续将会介绍的客户端负载均衡。上述是一种简单的服务治理逻辑,以方便理解服务治理框架的基本运行思路。实际的框架为了性能等因素,不会采用每次都向服务注册中心获取服务的方式,并且不同的应用场景在缓存和服务剔除等机制上也会有一些不同的实现策略。

Spring Cloud Eureka,使用Netflix Eureka来实现服务的注册与发现,它包含了采用Java编写服务端组件客户端组件。

什么是Eureka服务端?

Eureka服务端,我们称为服务注册中心。如果Eureka以集群模式部署,当集群中有分片出现故障时,Eureka就转入自我保护模式。它允许在分片故障期间继续提供服务的发现与注册,当故障分片恢复运行时,集群中的其他分片会把它们的状态再次同步回来。

什么是Eureka客户端?

在运用程序运行期间,Eureka客户端向服务注册中心注册自身提供的服务并周期性的发送心跳来更新它的服务租约。同时它也能从服务端查询当前注册的服务信息并把他们缓存到本地并周期性的刷新服务状态。

实例:搭建服务注册中心

(转载)史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)

额外的笔记:

服务发现与消费

目前我们已经有了服务注册中心和服务提供者。下面我们尝试构建一个服务消费者,它主要完成服务的发现和服务的消费,其中服务发现的任务由Eureka的客户端完成,而服务消费的任务由Ribbon完成。

什么事Ribbon?

Ribbon是一个基于HTTP和TCP的客户端负载均衡器,它可以在通过客户端中配置的ribbonServerList服务端列表去轮询访问以达到负载均衡的作用。当Ribbon和Eureka联合使用时,Ribbon的服务实例清单RibbonServerList会被DiscoveryEnabledNIWSServerList重写,扩展成从Eureka注册中心中获取服务端列表。同时它会用NIWSDiscoveryPing来取代IPing,它将职责委托给Eureka来确定服务端是否已经启动。从上述可知Ribbon在Eureka服务发现的基础上,实现了一套对服务实例的选择策略,从而实现对服务的消费。

实例:在Eureka服务治理体系下如何实现服务的发现与消费?

(转载)史上最简单的SpringCloud教程 | 第二篇: 服务消费者(rest+ribbon)

额外笔记:在控制台在不同端口启动多个服务


170925_Spring Cloud 微服务实战(翟永超著) 读书笔记(二)_什么是Spring Cloud Eureka?相关推荐

  1. Spring Cloud 微服务实战笔记

    Spring Cloud 微服务实战笔记 微服务知识 传统开发所有业务逻辑都在一个应用中, 开发,测试,部署随着需求增加会不断为单个项目增加不同业务模块:前端展现也不局限于html视图模板的形式,后端 ...

  2. Spring Cloud 微服务实战系列-Spring Boot再次入门(一)

    导语   看到标题大家都疑惑,为什么叫做再入门呢?在之前的博客中也分享过相关的内容,但为了让Spring Cloud 微服务实战系列更加完整就再次编写一个入门的内容,也是为了这个系列的内容更加的完整, ...

  3. 手把手,嘴对嘴教你Spring Cloud 微服务实战 -- 前言

    Spring Cloud 总结 博主接触到Spring Cloud 大概已经一年多了,当时Spring Cloud微服务框架已经是潮流了,不会一点都不好意思出去面试.并且主流技术基本上都在谈论微服务, ...

  4. Spring Cloud 微服务实战精品文章大汇总,错过了血亏!

    随着互联网的高速发展,庞大的用户群体和快速的需求变化已经成为了传统架构的痛点.在这种情况下,如何从系统架构的角度出发,构建出灵活.易扩展的系统来快速响应需求的变化,同时,随着用户量的增加,如何保证系统 ...

  5. Spring Cloud微服务实战(五)-应用通信

    订单服务源码 https://github.com/Wasabi1234/SpringCloud_OrderDemo 商品服务源码 https://github.com/Wasabi1234/Spri ...

  6. Spring Cloud 微服务实战系列-Ribbon整合RestTemplate实现负载均衡

    导语   在Spring Cloud项目中想要整合Ribbon只需要在pom文件中加入对应的依赖就可以了,那么在这次的分享中就来看看在Ribbon怎么通过RestTemplate来进行负载均衡,以及扩 ...

  7. Spring Cloud 微服务实战系列-Eureka注册中心(二)

    导语   之前的分享中,简单的介绍了SpringBoot的入门知识以及如何使用Eureka搭建服务注册中心,这一次的分享主要是来讲解一些在Eureka中的常用的配置,方便大家在使用Eureka的时候可 ...

  8. Spring Cloud 微服务实战系列-Eureka注册中心(一)

    导语   在这一个系列的分享中,笔者主要是来分享在实战实际操作中的一些使用场景,了解了实战的操作中的使用场景才能更好的从实战中的问题出发找到自己需要的原理性的东西,找到原理性的东西之后才可以更好的根据 ...

  9. 创智播客微服务_周立-Spring Cloud微服务实战视频课程

    『课程目录』:" |0 O6 f0 d! b% }$ Z; T- g 1 公开课 2 1.1 微服务架构概述 3. 2.1 开始使用Spring Cloud实战微服务 4 3.1 服务提供者 ...

  10. 手把手,嘴对嘴教你Spring Cloud 微服务实战 -- 初识Spring Cloud

    Spring Cloud 简介 摘自百度百科: Spring Cloud是一系列框架的有序集合.它利用SpringBoot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消 ...

最新文章

  1. CODE 大全网站整站源码分享(带数据库)
  2. linux java性能监控工具_性能监控工具以及java堆分析OOM
  3. JavaWeb图书管理系统day03
  4. linux sftp创建多用户,linux下SFTP多用户创建
  5. java桌面应用程序打包为exe
  6. 51nod-猴猴吃苹果【线段树】
  7. java高分面试指南:java单例模式双重检查
  8. tornado学习笔记day06-应用安全
  9. 4 5区别 angular 和_Angular 常见问题解答
  10. GitHub#C#:在终端里面显示一个UI窗口(TerminalGfx)
  11. 9 Node 中的 TensorFlow.js
  12. JS总结 本地对象2 BOM DOM
  13. java 正整数类型_跟我学java编程—认识java的整数类型
  14. 什么是智能家电?消费者不知判定标准
  15. 网站部署证书 百度浏览器仍提示不安全网站怎么办
  16. 基于Matlab的数字水印设计—基于DCT域的水
  17. sql语句查询A表有而B表没有的数据
  18. excel的一些常用技巧
  19. java pdf转html插件pdf2htmlex
  20. 生成排列(全排列)的两种写法

热门文章

  1. 【转自52v6】教你如何走IPv6下载百…
  2. PackageInstaller 类安装/卸载应用
  3. 如何安装红旗linux6.0声卡驱动
  4. java变量表述_下列关于Java变量的描述,错误的是:_学小易找答案
  5. 嵌入式软件工程师面试题总结
  6. winform使用字体图标
  7. HIVE的基本使用05(HSQL调优)
  8. win10安装steam有损计算机,Win10专业版修复Steam磁盘写入错误的方法
  9. STEAM 自动安装时提示C++ 安装不了等问题
  10. Termux安装Python