您当前所在位置: > 网游 > 综合热点

Spring Cloud 微服务框架体系介绍

时间:2018-08-27 20:05:58  来源:  作者:网络
请注意:本文为编辑制作专题转载的资讯,页面显示的时间仅为生成静态页面时间而非具体内容事件发生的时间,由此给您带来的不便敬请谅解!

Spring Cloud简介

Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

为什么考虑Spring Cloud

Spring Cloud的特性

Spring Cloud的这些特性都是由不同的组件来完成,在架构的演进过程中扮演着重要的角色,接下来我们一起看看。

Spring Cloud体系工具框架

Spring Cloud共集成了19个子项目,里面都包含一个或者多个第三方的组件或者框架!

Spring Cloud 体系包含以下工具框架:

1、Spring Cloud Config 配置中心,利用git集中管理程序的配置。

2、Spring Cloud Netflix集成众多Netflix的开源软件

3、Spring Cloud Bus消息总线,利用分布式消息将服务和服务实例连接在一起,用于在一个集群中传播状态的变化

4、Spring Cloud for Cloud Foundry利用Pivotal Cloudfoundry集成你的应用程序

5、Spring Cloud Cloud Foundry Service Broker为建立管理云托管服务的服务代理提供了一个起点。

6、Spring Cloud Cluster 基于Zookeeper, Redis, Hazelcast, Consul实现的领导选举和平民状态模式的抽象和实现。

7、Spring Cloud Consul基于Hashicorp Consul实现的服务发现和配置管理。

8、Spring Cloud Security在Zuul代理中为OAuth2 rest客户端和认证头转发提供负载均衡

9、Spring Cloud SleuthSpringCloud应用的分布式追踪系统,和Zipkin,HTrace,ELK兼容。

10、Spring Cloud Data Flow一个云本地程序和操作模型,组成数据微服务在一个结构化的平台上。

11、Spring Cloud Stream基于Redis,Rabbit,Kafka实现的消息微服务,简单声明模型用以在Spring Cloud应用中收发消息。

12、Spring Cloud Stream App Starters基于Spring Boot为外部系统提供spring的集成

13、Spring Cloud Task 短生命周期的微服务,为SpringBooot应用简单声明添加功能和非功能特性。

14、Spring Cloud Task App Starters

15、Spring Cloud Zookeeper服务发现和配置管理基于Apache Zookeeper。

16、Spring Cloud for Amazon Web Services快速和亚马逊网络服务集成。

17、Spring Cloud Connectors便于PaaS应用在各种平台上连接到后端像数据库和消息经纪服务。

18、Spring Cloud Starters (项目已经终止并且在Angel.SR2后的版本和其他项目合并)

19、Spring Cloud CLI插件用Groovy快速的创建Spring Cloud组件应用。

下面将会介绍几个Spring Cloud体系中的重要组件。

1

Spring Cloud Netflix Eureka

Eureka是Netflix开源的一款提供服务注册和发现的产品,它提供了完整的Service Registry和Service Discovery实现。也是Spring Cloud体系中最重要最核心的组件之一。

Eureka是Spring Cloud体系的服务中心,将所有的可以提供的服务都注册到它这里来管理,其它各调用者需要的时候去注册中心获取,然后再进行调用,避免了服务之间的直接调用,方便后续的水平扩展、故障转移等。如下图:

当然服务中心这么重要的组件一但挂掉将会影响全部服务,因此需要搭建Eureka集群来保持高可用性,生产中建议最少两台。随着系统的流量不断增加,需要根据情况来扩展某个服务,Eureka内部已经提供均衡负载的功能,只需要增加相应的服务端实例既可。那么在系统的运行期间某个实例挂了怎么办?Eureka内容有一个心跳检测机制,如果某个实例在规定的时间内没有进行通讯则会自动被剔除掉,避免了某个实例挂掉而影响服务。

因此使用了Eureka就自动具有了注册中心、负载均衡、故障转移的功能。

2

Spring Cloud Hystrix

在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应。服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者”的不可用,并将不可用逐渐放大的过程。

如下图所示:A作为服务提供者,B为A的服务消费者,C和D是B的服务消费者。A不可用引起了B的不可用,并将不可用像滚雪球一样放大到C和D时,雪崩效应就形成了。

在这种情况下就需要整个服务机构具有故障隔离的功能,避免某一个服务挂掉影响全局。在Spring Cloud 中Hystrix组件就扮演这个角色。

Hystrix是Spring Cloud体系中的一个分布式系统限流、降级、熔断框架,Hystrix会在某个服务连续调用N次不响应的情况下,立即通知调用端调用失败,避免调用端持续等待而影响了整体服务。Hystrix间隔时间会再次检查此服务,如果服务恢复将继续提供服务。

Hystrix断路器可以防止一个应用程序多次试图执行一个操作,即很可能失败,允许它继续而不等待故障恢复或者浪费 CPU 周期,而它确定该故障是持久的。断路器模式也使应用程序能够检测故障是否已经解决。如果问题似乎已经得到纠正,应用程序可以尝试调用操作。

3

Spring Cloud Config

Spring Cloud Config是一个解决分布式系统的配置管理方案。它包含了Client和Server两个部分,Server提供配置文件的存储、以接口的形式将配置文件的内容提供出去,Client通过接口获取数据、并依据此数据初始化自己的应用。

其实就是Server端将所有的配置文件服务化,需要配置文件的服务实例去Config Server获取对应的数据。将所有的配置文件统一整理,避免了配置文件碎片化。

如果服务运行期间改变配置文件,服务是不会得到最新的配置信息,需要解决这个问题就需要引入Refresh。可以在服务的运行期间重新加载配置文件。

当所有的配置文件都存储在配置中心的时候,配置中心就成为了一个非常重要的组件。如果配置中心出现问题将会导致灾难性的后果,因此在生产中建议对配置中心做集群,来支持配置中心高可用性。

4

Spring Cloud Zuul

Spring Cloud Zuul是Netflix开源的微服务网关,他可以和Eureka,Ribbon,Hystrix等组件配合使用。Zuul组件的核心是一系列的过滤器,这些过滤器可以完成以下功能:

5

Spring Cloud Ribbon

Spring Cloud Ribbon组件主要用于提供客户侧的软件负载均衡算法。

Ribbon客户端组件提供一系列完善的配置选项,比如连接超时、重试、重试算法等。Ribbon内置可插拔、可定制的负载均衡组件。下面是用到的一些负载均衡策略:

Ribbon中还包括以下功能:

相关下载

玩家评论

框架结构的好处?

框架结构的房子好处是非常多的。,增强结构的整体性,没有多余的柱子和梁,现在流行的建筑结构,简单稳定,居住舒适,有较强的抗震性空间分割灵活施工标准化程度高,结构整体性好,使用详情>>

阅读: 4
日期: 2020-03-04
百度亮出新型智慧城市总体框架,加速产业智能化升级丨钛快讯

原标题:百度亮出新型智慧城市总体框架,加速产业智能化升级丨钛快讯 钛媒体快讯 | 11月3日消息:近日,东软解决方案论坛2019今日在成都举办,百度、东软详情>>

阅读: 16
日期: 2019-11-03
法美同意在多边框架下解决数字税问题

原标题:法美同意在多边框架下解决数字税问题 法国和美国26日在七国集团(G7)峰会期间就“数字服务税”问题达成一致,同意在经济合作与发展组织(经合组织详情>>

阅读: 6
日期: 2019-08-27
怎样制作具有透视效果的框架图

今天教会大家怎样用OFFICE2013的Visio Professional制作具有透视效果的框架图,攻略对象OFFICE2013 Visio Professional步骤分解1首先打开Visio2013,在新建那里选择:具有透视效详情>>

阅读: 7
日期: 2019-06-18
[专栏作家]浅谈PureMVC框架

原标题:[专栏作家]浅谈PureMVC框架 简单地谈谈PureMVC框架,算是入门篇。 从Facade进入整个框架体系。 Facad 详情>>

阅读: 12
日期: 2019-05-10
9本丨部落冲突原创9本阵框架分享 用起来非常舒服

原标题:9本丨部落冲突原创9本阵框架分享 用起来非常舒服 上了9本以后,呆了还是满长一段时间的,找了很多阵,用 详情>>

阅读: 57
日期: 2019-05-02
《太吾绘卷》基础MOD资源框架工具游戏辅助下载

中文名称:太吾绘卷发布日期:2018-10-13更新日期:--文件大小:95K游戏语言:简体中文英文名称:TheScrollOfTaiwu游戏制作:ConchShipGame详情>>

阅读: 0
日期: 2019-03-26
实用收藏 框架版小凯活动效率攻略分享

实用收藏 框架版小凯活动效率攻略分享, 一直以为这任务很麻烦(我怕麻烦),所以今天才开始做,九个任务理一理框架,让大家更清淅,攻略简单的说,就是人多时大家一... 详情>>

阅读: 3
日期: 2018-11-26
EUI如何调出系统默认团队框架 团队框架设置步骤

1、首先需要先打开EUI插件,进入魔兽世界的主界面,点击键盘上的ESC或者游戏内的主菜单,进入到主菜单栏,点击红框中的“EUI”选项,如下图: 2、如果想要开启暴雪团队... 详情>>

阅读: 7
日期: 2018-10-23
《太吾绘卷》基础MOD框架安装与使用手册 MOD框架使用方法

  《太吾绘卷》想要安装MOD就需要前置框架在提供支持,各位太吾是否会使用这个框架工具呢?下面小编为大家带来《太吾绘卷》基础MOD框架安装与使用手册,希望对大家有所详情>>

阅读: 24
日期: 2018-10-07
吃鸡游戏的吃鸡车,这些都只是铁框架

大家都知道,每款吃鸡游戏,都有一台吃机车。这辆车外表平平无奇,但是能上天,能入地,轻则躲子弹,挡子弹,重则开车撞人,霸气上路,别人都不敢打你!例如绝地求生的这一款——别只看它只是个铁架子,然而,这辆详情>>

阅读: 1
日期: 2018-09-04
Java十大常用框架介绍(spring系+dubbo+RabbitMQ+Ehcache+redis)

一、SpringMVCSpringWebMVC是一种基于Java的实现了WebMVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动详情>>

阅读: 7
日期: 2018-08-29
不懂百度框架户怎么开?还不赶快点开

百度框架户开户的流程很简单,但其中的注意事项有很多。对于很多的新手,都不知道百度框架户怎么开,下面,小编就根据多年的开户经验来给大家介绍下百度框架户开户的具体流程和一些注意事项。一、百度开户的广告账详情>>

阅读: 3
日期: 2018-08-24
我的世界0.17.0末地框架在哪

  我的世界0.17.0末地框架在哪?很多小伙伴对这个新版的末地还不熟悉,那么今天小编就给大家介绍下末地框架的具体内容,想知道的就来看看吧。  末地框架位置:  末地传送门框架详情>>

阅读: 6
日期: 2018-08-23
主世界大型猪人塔制作 框架篇

主世界大型猪人塔制作 框架篇详情>>

阅读: 0
日期: 2018-08-20
HTC One M7 5.0.2 ROM 全国行框架

今天巴士要和各位小伙伴们分享一款HTC One M7 5.0.2 ROM,该ROM基于最新欧版 RUU 7.19.401.2全新制而成。 详情>>

阅读: 3
日期: 2018-08-17
【oO】我已经下载了谷歌服务框架,也把google play放到system/app里...

小编为您搜罗的答案:全部卸载谷歌包括system/app里面的然后重启手机去正规的网站下载重新安装一下详情>>

阅读: 2
日期: 2018-08-08
【Dex】ci 框架报index.php 配置错误Your system folder path does not a...

小编为您搜罗的答案:服务器用的nginx还是apache?<br>应该是server没配置好,server配置发一下看。详情>>

阅读: 3
日期: 2018-08-08
涨姿势,不用root,也能用xposed框架!

Xposed框架是一款可以在不修改APK的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作。但是使用Xposed框架手机是需要root的,详情>>

阅读: 11
日期: 2018-07-28
完美收购《战争框架》研发商引国外玩家不满 被吓怕了?

随着中国主机禁令的解除,完美世界的野望一览无余,毕竟中国主机市场有着无穷的潜力。前几天有消息指出完美将与... 详情>>

阅读: 3
日期: 2018-07-25
官方确定《战争框架》PC版入华!逼格甚高Hold不住

早前就有消息表明逼格甚高的科幻大作《战争框架》不仅仅将出现在国行版PS4上,也非常有可能与中国PC玩家见... 详情>>

阅读: 6
日期: 2018-07-25
AKB0048-AR缺少谷歌服务框架解决方法

小编为您搜罗的答案:导致《AKB0048-AR》黑屏的原因之一就是缺少《谷歌服务框架》,《谷歌服务框架GoogleServicesFramework》是谷歌安卓系统官方服务框架,用来作为谷歌软件的支详情>>

阅读: 6
日期: 2018-07-07
课程框架与总体介绍

课程框架与总体介绍详情>>

阅读: 0
日期: 2018-07-01
《CSGO》界面框架将大改?风格或与Dota2类似

  相信大多数玩家也遇到过这样的情况:玩CSGO时会莫名掉帧,再好的电脑,在主菜单点击上方的按钮时总会卡顿。这是因为CSGO自发详情>>

阅读: 9
日期: 2018-06-28
framed 致命框架玩法攻略 框架之中有着技巧 详解怎么玩

framed致命框架玩法可以说是能让不少人享受到犹如电影一般的感受,但是究竟这个游戏玩法是如何也是让不少人有些好奇是如何才能玩好,留意接下来的framed致命框架玩法攻略就知道如何详情>>

阅读: 48
日期: 2018-06-01
《我的世界》超级合成框架MOD

《我的世界》超级合成框架MOD补丁类型:游戏MOD补丁语言:简体中文更新时间:2015/11/2117:23:04补丁大小:75.0KB游戏标签:模拟建筑相关补丁专题:我的世界mod《详情>>

阅读: 12
日期: 2018-04-25
《DNF》新款Saber血槽等级框架全修改补丁

《DNF》新款Saber血槽等级框架全修改补丁补丁类型:网游辅助更新时间:2017/10/1610:34:06补丁大小:2.4MB相关补丁专题:DNF补丁大全《DNF》新款Saber血槽等详情>>

阅读: 33
日期: 2018-04-24
百变框架游戏怎么玩 百变框架游戏内容介绍 详解怎么玩

《百变框架》是一款独具一格的解谜游戏,这款游戏对于玩家的一些游戏习惯把握的相当好,下面小编就为大家简单的介绍一下这款游戏的内容以及玩法吧。首先,你只是一只小方块。不过,你却拥有无以伦比详情>>

阅读: 4
日期: 2018-03-31
framed 致命框架玩法 框架之中有着技巧 详解怎么玩

framed致命框架玩法可以说是能让不少人享受到犹如电影一般的感受,但是究竟这个游戏玩法是如何也是让不少人有些好奇是如何才能玩好,留意接下来的framed致命框架玩法攻略就知道如何详情>>

阅读: 2
日期: 2018-03-29
风暴英雄UI优化:队伍框架 头像框架及火力全开

详情>>

阅读: 29
日期: 2017-03-04
精彩推荐