SpringCloud---服务治理---Spring Cloud Eureka
1、概述
1.1 Spring Cloud Eureka是Spring Cloud Netflix微服务套件中的一部分,基于Netflix Eureka做了二次封装,主要负责完成微服务架构中的服务治理功能;
1.2 Spring Cloud通过为Eureka增加了Spring Boot风格的自动化配置,我们只需要通过简单引入依赖、注解配置就能让Spring Boot构建的微服务应用轻松地与Eureka服务治理体系进行整合;
1.3 Spring Cloud Eureka包含了服务端组件、客户端组件,并且均采用java编写;
Eureka服务端:
也称为服务注册中心;
同其他服务注册中心一样,支持高可用配置;
在SpringBoot启动类通过@EnableEurekaServer注解启动一个注册中心;
Eureka客户端:
处理服务注册、服务发现;
客户端通过@EnableDiscoveryClient注解和参数配置的方式,嵌入在客户端应用程序的代码中;
在应用程序运行时,Eureka客户端向注册中心(Eureka服务端)注册自身提供的服务并周期性地发送心跳来更新它的服务租约;
Eureka客户端也能从服务端查询当前注册的服务信息并把它们缓存到本地并周期性地刷新服务状态;
2、服务治理:
微服务架构中最为核心、基础的模块;
作用:实现各个微服务实例的自动化注册与发现
为了解决微服务架构中的服务实例维护问题,产生了大量的服务治理框架和产品,这些框架和产品的实现都围绕着服务注册、服务发现机制来完成对微服务应用实例的自动化管理;
1.1 服务注册:
在服务治理框架中,通常会构建一个注册中心,每个服务单元向注册中心登记自己提供的服务,将主机与端口号、版本号、通信协议等一些附加信息告知注册中心,注册中心按服务名分类组织服务清单;

1.2 服务发现:
由于在服务治理框架下运作,服务间的调用不再通过指定具体的实例地址来实现,而是通过向服务名发起请求调用实现;
服务调用方在调用服务提供方接口的时候,并不知道提供方的服务实例的具体位置,需要向服务注册中心咨询服务,并获取所有服务实例清单,以实现对具体实例的访问;
3、高可用注册中心
1.1 在Eureka的服务治理设计中,所有的节点既是服务提供方,也是服务消费方,服务注册中心也一样;
Eureka Server的高可用实际上就是将自己作为服务向其他服务注册中心注册自己,这样可以形成一组互相注册的服务注册中心,以实现服务清单的互相同步,达到高可用的效果;
1.2 暂搁置
4、服务发现与消费
1.1 服务发现的任务由Eureka的客户端完成;
1.2 服务消费由Ribbon完成;
Ribbon:
一个基于HTTP和TCP的客户端负载均衡器;
通过在客户端中配置的ribbonServerList服务端列表去轮询访问以达到负载均衡的作用;
当Ribbon和Eureka联合使用时,Ribbon的服务实例清单RibbonServerList会被DiscoveryEnableNIWSServerList重写,扩展成从Eureka注册中心获取服务端列表,同时也会用NIWSDiscoveryPing来取代IPing,它将职责委托给Eureka来确定服务端是否已经启动;
5、Eureka详解
1.1 基础架构
服务注册中心:
EurekaServer
服务提供者:
提供服务的应用,可以是Spring boot应用,也可以是其他技术平台(遵循Eureka通信机制的应用);
服务消费者:
消费者应用从服务注册中心获取服务列表,从而使消费者可以知道去哪调用其需要的服务;
1.2 通信机制
Eureka采用了 与平台无关性的 基于HTTP的Rest接口;
默认情况下,Eureka使用Jersey、XStream配合json作为Server与Client之间的通信协议:
Jersey:JAX-RS的参考实现;
JAX-RS:
java EE6引入的新技术,即java API for Restful Web Services;
XStream:将对象序列化成json、反序列化为对象的一个java类库;
SpringCloud---服务治理---Spring Cloud Eureka的更多相关文章
- 【SpringCloud微服务实战学习系列】服务治理Spring Cloud Eureka
Spring Cloud Eureka是Spring Cloud Netflix微服务中的一部分,它基于NetFlix Sureka做了二次封装,主要负责完成微服务架构中的服务治理功能. 一.服务治理 ...
- 服务治理-> Spring Cloud Eureka
服务治理->搭建服务注册中心 服务治理可以说是微服务架构中最为核心和基础的模块, 它主要用来实现各个微服务 实例的自动化注册与发现. 为什么我们在微服务架构中那么需要服务治理模块呢?微服务 系统 ...
- 笔记:Spring Cloud Eureka 服务治理
Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能,服务 ...
- 第三章 服务治理:Spring Cloud Eureka
Spring Cloud Eureka是Spring Cloud Netflix 微服务套件中的一部分,它基于Netflix Eureka做了二次封装,主要负责完成微服务架构中的服务治理功能.Spri ...
- Spring Cloud Eureka 服务治理
Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能,服务 ...
- 1 Spring Cloud Eureka服务治理
注:此随笔为读书笔记.<Spring Cloud微服务实战> 什么是微服务? 微服务是将一个原本独立的系统拆分成若干个小型服务(一般按照功能模块拆分),这些小型服务都在各自独立的进程中运行 ...
- Spring Cloud微服务笔记(三)服务治理:Spring Cloud Eureka快速入门
服务治理:Spring Cloud Eureka 一.服务治理 服务治理是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册与发现. 1.服务注册: 在服务治理框架中,通常会构 ...
- 第三章 服务治理: Spring Cloud Eureka
Spring Cloud Eureka是 Spring Cloud Netflix微服务套件中的一部分,它基于Netflix Eureka做了二次封装,主要负责完成微服务架构中的服务治理功能 服务治理 ...
- Spring cloud Eureka 服务治理(搭建服务注册中心)
服务之类是微服务架构中最为核心的基础模块,它主要用来实现各个微服务实例的自动化注册和发现. 1. 服务注册 在服务治理框架中,通常会构建一个注册中心,每个服务单元向注册中心登记自己提供的服务,将主机. ...
随机推荐
- Oracle数据库之日期函数
今天给大家介绍一下oracle数据中的日期函数的用法.废话不多说,我们看一下oracle给我们提供了那些函数? 1.sysdate 用途:获取当前系统时间. 2.to_date('字符类型','日期类 ...
- (转)ASP.NET MVC4+EasyUI+EntityFrameWork权限管理系统——数据库的设计(一)
原文地址:http://www.cnblogs.com/cmsdn/p/3371576.html 快一年没写博客了,这段时间感觉好迷茫,写点博客,记录一下自己的成长过程,希望对大家也有帮助 先上图 一 ...
- 结对编程 四则运算(java)(胡大华 黄绪明)
Github项目地址 https://github.com/yogurt1998/Myapp 项目需求 题目: 实现一个自动生成小学四则运算题目的命令行程序 功能 1.使用-n 参数控制生成题目的个数 ...
- 原型(Prototype)模式
一. 原型(Prototype)模式 原型模式的用意是:通过给出一个原型对象来指明所要创建的对象类型,然后用复制这个原型对象的办法创建出更多的同类型对象. 从孙大圣的手段谈起 孙悟空在与黄风怪的战斗中 ...
- [bash] 显示配色
#/bin/bash for STYLE in 0 1 2 3 4 5 6 7; do for FG in 30 31 32 33 34 35 36 37; do for BG in 40 41 42 ...
- 禁用 C# 编译器对某段代码的警告
发使用 C# 编译器编译一些项目的时候, C# 编译器可能会生成一些警告信息, 有些代码段的警告信息是程序员知道的,所以希望 C# 编译器不要对这段代码进行任何的警告. 在 VS 中的项目选项中可以对 ...
- .Net Core 项目引用本地类库方式(二)
上篇文章有详细的介绍.Net Core 项目中引用本地类库通过打包,然后Nugety引用方式,这里再介绍一种引用包的方式
- SpringMVC+Hibernate 使用 session.update(obj) 未更新的问题
1.使用spring控制事务 2.使用session.update(obj)执行更新 spring事务配置: <bean id="transactionBese" class ...
- 「BZOJ 2733」「HNOI 2012」永无乡「启发式合并」
题意 你需要维护若干连通快,有两个操作 合并\(x,y\)所在的连通块 询问\(x\)所在连通块中权值从小到大排第\(k\)的结点编号 题解 可以启发式合并\(splay\),感觉比较好些的 一个连通 ...
- Linux解压工具
指令 yum install lrzsz