范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

SpringCloud五大组件

  Spring Cloud五大组件
  Spring Cloud是分布式微服务架构的一站式解决方案,在Spring Boot基础上能够轻松搭建微服务系统的架构。
  现有Spring Cloud有两代实现:一代:Spring Cloud Netflix,主要由:Eureka、Ribbon、Feign、Hystrix、Zuul|Gateway、Config等组件组成。
  二代:Spring Cloud Alibaba,主要由:Nacos、Sentinel、Seata等组件组成。一、服务治理组件
  一代的服务治理组件为:Spring Cloud Netflix Eureka,主要负责Spring Cloud的服务发现与服务注册。
  二代的服务治理组件为:Spring Cloud Alibaba Nacos,可以将Nacos理解为服务注册中心和配置中心的结合体;可以替换一代组件中的:Eureka、Config。1.1 Eureka
  Eureka采用C/S架构,包含两大组件:Eureka Server:服务注册中心,其他微服务启动时,服务注册到Eureka Server。Eureka Server维护了可用服务列表,存储所有注册到Eureka Server的服务的信息。
  自己搭建的Eureka Server服务端:https://gitee.com/Xiaoxinnolabi/my-eureka-serverEureka Client:客户端,也就是微服务集群中的各个微服务。微服务启动后,Eureka Client会向Eureka Server发送心跳(默认周期30S)。Eureka Server在多个心跳周期内(默认90S)没有接收到某个Eureka Client的心跳,则将该Eureka Client从可用服务列表移除。Eureka实现服务注册与发现的原理:服务注册中心(Register Service):Eureka Server,提供服务注册和服务发现功能服务提供者(Provider Service):Eureka Client,服务的提供者,以供应服务给消费者所发现。服务消费者(Consumer Service):Eureka Client,服务的消费者,从服务注册中心获取服务列表,调用所需服务。调用所需服务:通过HTTP或者消息中间件远程调用服务提供者提供的服务。1.2 Nacos
  Nacos 英文全称为 Dynamic Naming and Configuration Service,是一个由阿里巴巴团队使用 Java 语言开发的开源项目。
  Nacos采用C/S架构,包含两大组件:
  Nacos Server:可以作为服务注册中心、配置中心,帮助Nacos Client实现服务的发现、注册,配置的动态刷新。
  Nacos Client:通过spring-cloud-starter-alibaba-nacos-discovery,在Nacos Server中实现服务的注册和发现;通过spring-cloud-starter-alibaba-nacos-config,在Nacos Server中实现配置的动态刷新。
  Nacos实现服务注册与发现的流程:Nacos Server启动服务提供者Nacos Client启动,把spring.appliction.name服务名注册到Nacos Server服务消费者Nacos Client启动,把spring.appliction.name服务名注册到Nacos Server,从Nacos Server获取一份服务注册信息(包含所有注册到Nacos Server中的服务的信息)。服务消费者进行服务消费时,通过HTTP或RPC调用所需服务。Nacos特性:服务发现
  支持基于DNS和RPC的服务发现。当服务提供者使用原生SDK、OpenAPI或一个独立的Agent TODO向Nacos注册服务后,服务消费者可以通过HTTP、DNS TODO、API查找、发现服务。服务健康监测
  提供对服务的实施健康检查,能够阻止请求发送到不健康主机或服务实例上。提供了健康检查仪表盘,能够根据健康状态管理服务的可用性流量动态配置服务
  动态配置服务可以让我们以中心化、外部化和动态化的方式,管理所有环境的应用配置和服务配置。
  Nacos 提供了一个简洁易用的 UI 帮助我们管理所有服务和应用的配置。Nacos 还提供包括配置版本跟踪、金丝雀发布、一键回滚配置以及客户端配置更新状态跟踪在内的一系列开箱即用的配置管理特性,帮助我们更安全地在生产环境中管理配置变更和降低配置变更带来的风险。动态DNS服务
  Nacos 提供了动态 DNS 服务,能够让我们更容易地实现负载均衡、流量控制以及数据中心内网的简单 DNS 解析服务。
  Nacos 提供了一些简单的 DNS APIs TODO,可以帮助我们管理服务的关联域名和可用的 IP:PORT 列表。服务及其元数据管理
  Nacos 能让我们从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略、服务的 SLA 以及 metrics 统计数据。二、负载均衡组件
  一代的负载均衡组件为:Spring Cloud Ribbon,主要负责Spring Cloud的客户端负载均衡和服务调用工具。
  二代的负载均衡组件为:Spring Cloud Ribbon或Spring Cloud LoadBalancer;由于Spring Cloud Ribbon已停止更新,进入维护阶段,因此LoadBalancer是Ribbon新版的解决方案;基于现有市场大部分依旧使用Spring Cloud Ribbon,仅对Spring Cloud Ribbon做介绍。2.1 Spring Cloud Ribbon
  Spring Cloud Ribbon 是一套基于 Netflix Ribbon 实现的客户端负载均衡和服务调用工具。
  Ribbon 是 Spring Cloud 体系中最核心、最重要的组件之一。它虽然只是一个工具类型的框架,并不像 Eureka Server(服务注册中心)那样需要独立部署,但它几乎存在于每一个使用 Spring Cloud 构建的微服务中。负载均衡
  将用户请求平摊到多个服务器上,以达到扩展服务器带宽、增强数据处理能力、增加吞吐量、提高网络的可用性和灵活性的目的。
  常见负载均衡方式:服务端负载均衡
  如常规前后端交互中间件Nginx,在客户端和服务端直接建立一个独立的负载均衡器,负载均衡器记录可用服务器列表,通过心跳机制删除故障节点。
  请求从客户端发送时,通过中间件Nginx,按照特定算法(轮询、随机),从可用服务器选择服务端进行转发。客户端负载均衡
  客户端负载均衡是将负载均衡逻辑以代码的形式封装到客户端上,即负载均衡器位于客户端。客户端通过服务注册中心(例如 Eureka Server)获取到一份服务端提供的可用服务清单。有了服务清单后,负载均衡器会在客户端发送请求前通过负载均衡算法选择一个服务端实例再进行访问,以达到负载均衡的目的;客户端负载均衡也需要心跳机制去维护服务端清单的有效性,这个过程需要配合服务注册中心一起完成。
  Ribbon 就是一个基于 HTTP 和 TCP 的客户端负载均衡器,当我们将 Ribbon 和 Eureka 一起使用时,Ribbon 会从 Eureka Server(服务注册中心)中获取服务端列表,然后通过负载均衡策略将请求分摊给多个服务提供者,从而达到负载均衡的目的。三、熔断器组件
  微服务系统架构中,一个请求往往需要多个服务配合处理完成;当一个服务出现故障时,沿着调用链路导致微服务故障在系统中蔓延,最终导致整个系统的瘫痪,这就是"雪崩效应"。为了能够及时对服务故障进行熔断处理,微服务架构引入了熔断器组件,确保整个系统的服务容错、加强保护机制。3.1 Spring Cloud Hystrix
  Spring Cloud Hystrix 是一款优秀的服务容错与保护组件,也是 Spring Cloud 中最重要的组件之一。
  Spring Cloud Hystrix 能够有效地阻止分布式微服务系统中出现联动故障,以提高微服务系统的弹性。Spring Cloud Hystrix 具有服务降级、服务熔断、线程隔离、请求缓存、请求合并以及实时故障监控等强大功能。四、服务网关组件
  在微服务架构中,一个系统往往由多个微服务组成,而这些服务可能部署在不同机房、不同地区、不同域名下。这种情况下,客户端(例如浏览器、手机、软件工具等)想要直接请求这些服务,就需要知道它们具体的地址信息,例如 IP 地址、端口号等。
  可以通过服务网关,请求直接到服务网关,再由服务网关根据不同的标识信息将请求转发到微服务实例。
  可以在服务网关中处理一些非业务功能的逻辑,例如权限验证、监控、缓存、请求路由等。
  常见服务网关实现方案:Spring Cloud GatewaySpring Cloud Netflix ZuulNginx + Lua4.1 Spring Cloud Gateway
  Spring Cloud GateWay 最主要的功能就是路由转发,而在定义转发规则时主要涉及了以下三个核心概念,如下表。
  核心概念
  描述
  Route(路由)
  网关最基本的模块。它由一个 ID、一个目标 URI、一组断言(Predicate)和一组过滤器(Filter)组成。
  Predicate(断言)
  路由转发的判断条件,我们可以通过 Predicate 对 HTTP 请求进行匹配,例如请求方式、请求路径、请求头、参数等,如果请求与断言匹配成功,则将请求转发到相应的服务。
  Filter(过滤器)
  过滤器,我们可以使用它对请求进行拦截和修改,还可以使用它对上文的响应进行再处理。
  Spring Cloud Gateway 工作流程说明如下:客户端将请求发送到 Spring Cloud Gateway 上。Spring Cloud Gateway 通过 Gateway Handler Mapping 找到与请求相匹配的路由,将其发送给 Gateway Web Handler。Gateway Web Handler 通过指定的过滤器链(Filter Chain),将请求转发到实际的服务节点中,执行业务逻辑返回响应结果。过滤器之间用虚线分开是因为过滤器可能会在转发请求之前(pre)或之后(post)执行业务逻辑。过滤器(Filter)可以在请求被转发到服务端前,对请求进行拦截和修改,例如参数校验、权限校验、流量监控、日志输出以及协议转换等。过滤器可以在响应返回客户端之前,对响应进行拦截和再处理,例如修改响应内容或响应头、日志输出、流量监控等。响应原路返回给客户端。
  总而言之,客户端发送到 Spring Cloud Gateway 的请求需要通过一定的匹配条件,才能定位到真正的服务节点。在将请求转发到服务进行处理的过程前后(pre 和 post),我们还可以对请求和响应进行一些精细化控制。
  Predicate 就是路由的匹配条件,而 Filter 就是对请求和响应进行精细化控制的工具。有了这两个元素,再加上目标 URI,就可以实现一个具体的路由了。五、分布式配置组件5.1 Spring Cloud Config
  在分布式微服务系统中,几乎所有服务的运行都离不开配置文件的支持,这些配置文件通常由各个服务自行管理,以 properties 或 yml 格式保存在各个微服务的类路径下,例如 application.properties 或 application.yml 等。
  为了解决这些问题,通常我们都会使用配置中心对配置进行统一管理。市面上开源的配置中心有很多,例如百度的 Disconf、淘宝的 diamond、360 的 QConf、携程的 Apollo 等都是解决这类问题的。Spring Cloud 也有自己的分布式配置中心,那就是 Spring Cloud Config。
  Spring Cloud Config 是由 Spring Cloud 团队开发的项目,它可以为微服务架构中各个微服务提供集中化的外部配置支持。Spring Cloud Config 包含以下两个部分:Config Server:也被称为分布式配置中心,它是一个独立运行的微服务应用,用来连接配置仓库并为客户端提供获取配置信息、加密信息和解密信息的访问接口。Config Client:指的是微服务架构中的各个微服务,它们通过 Config Server 对配置进行管理,并从 Config Sever 中获取和加载配置信息。Spring Cloud Config 工作流程如下:开发或运维人员提交配置文件到远程的 Git 仓库。Config 服务端(分布式配置中心)负责连接配置仓库 Git,并对 Config 客户端暴露获取配置的接口。Config 客户端通过 Config 服务端暴露出来的接口,拉取配置仓库中的配置。Config 客户端获取到配置信息,以支持服务的运行。

那些我穿完逢人就推荐的好衣服逢人就推荐,首先它必须是性价比很高的衣服,谁会逢人就推荐爱马仕呢。其次是带来舒适身体体验的衣服,因为我穿过,知道它隐形的优点,所以恨不得向每个人推荐它的好。最后才是它很美。1高弹力玉兔迎春,温暖送给最牵挂的人作者昕月蓝殇给时光一个最美的微笑,一切不愉快都将过去,玉兔迎春,心中的温暖,送给最牵挂的人,愿你拥有美丽的梦想,所有的愿望都成真。有一种祝福,是希望你一切都好。一份真情,一份牵念,劝你,远离这三种人,真的没有必要联系人的一生,就是在不停断舍离的过程。不断失去,不断得到,循环往复。有些事,该放就放有些人,该断就断。净化自己的圈子,是一种能力,更是一种人间清醒,活得透彻。有些圈子,有些人,只会不断值得深思的13句话1。以前不说话是在生气,现在不说话是在调整情绪。人生90的烦恼都是自己寻来的,你若随遇而安,烦恼自会烟消云散。微笑和沉默是两个有效的武器,微笑能解决很多问题,,沉默能避免很多的问题花开如锦红成绮,玉面含羞笑相迟东风吹花满天地,红颜绿鬓娇无几。美人一笑春意浓,玉颊冰肌照秋辉。当时曾向瑶台醉,今日重来隔烟扉。青鸟衔书报消息,锦鳞传信何由归。江南二月芳菲早,杨柳千条拂晴霏。可怜桃李空自好,谁与回家过年春节其实就是一场富人的盛宴和穷人的迁徙,太多太多人把乡愁和思念寄托在一张小小的车票上,跋山涉水,千里迢迢,回到了陌生而又熟悉的家乡,然而却发现故乡犹在,却已物是人非,无法融入其中,初读是爱情,再读是人世苍凉这张照片常常被用作图书封面构成普罗大众对张爱玲的印象妆容精致,身着锦绣,高昂着头,眼神高傲,左手撂在身后,右手反叉腰,一副睥睨众生的模样。因为爱过,所以慈悲因为懂得,所以宽容。喜欢云南大理给去有风的地方剧组感谢信,网友刘亦菲真爆剧神话云南大理官方给去有风的地方剧组感谢信,感谢有风带动云南旅游热。电视剧除了附加演员们高额的商业价值以外,还承载着更多的社会价值,连带着相关的周边产品,剧中同款也都成为爆款。就是说谁看逛完市内这30个打卡好去处,就再也离不开广州了!放慢脚步的广州,让人们更怀念那些阳光明媚在广州闲逛的日子。在春节的日子里,给你们整理了三十多个闲逛打卡的好地方,如果你还没有好好逛过,赶紧安排起来吧!荔湾区越秀区天河区白云区黄埔区三十里营房传说从麻扎东行120公里,途中翻越流沙大坂和科克阿特(俗称黑恰)大坂,便到了三十里营房。此地行政区划归和田地区皮山县,地域严格来讲属于昆仑山系,因为从地图的山系上看,叶尔羌河上游水系流用南豆免费换客房,广东四家品质温泉等你泡!泡温泉过大年,既养生又惬意!在2023年春节假期来临之际,南方客户端积分商城重磅推出冬日泉暖温泉季年终福利活动,邀请你用南豆免费换客房。活动首批邀请了省内四家品质温泉企业参与,四家
深圳2025年初步建成跨境电商国际枢纽城市原标题广东跨境电商规模占全国三成,深圳提出2025年初步建成跨境电商国际枢纽城市深圳列日跨境电商空运专线开通。(深圳机场供图)读特客户端深圳新闻网2023年2月25日讯(深圳商报驻布林肯水平确实不行,给俄罗斯递刀子,闹出国际笑话据参考消息报道,美国国务卿布林肯接受采访时,被问美国为何为乌克兰提供巨额的援助。布林肯表示,大多数美国人发自内心地不喜欢看到一个大国欺负一个小国,他们只是觉得这是错的,就想对此采取首位产业地位逐渐彰显!云服务赋能贵州数字经济高质量发展相关试点场景累计服务的企业超过3万家,涉及场景累计交易金额超过100亿元2月10日,在国家区块链创新应用综合性试点交流会上,贵阳市政府相关负责人介绍,自2021年贵阳市获批区块链创广州入选国家第三批数字人民币试点地区说到数字人民币应用有点类似现有的移动支付,在2022年4月初广州市推广了数字人民币,我当时初次使用还领了减免优惠券,在广州市有部分高速出口收费站支持数字人民币支付。我目前发现的收费国产碳纤维龙头中复神鹰去年净利同比增超1倍,产销量大幅提高中复神鹰国内碳纤维龙头企业央企中国建材集团控股的中复神鹰碳纤维股份有限公司(下称中复神鹰,688295)最新公告披露,公司去年营业收入19。95亿元,和上年同期相比(同比)增加70洞见湾区丨凝聚高质量发展共识,助力大湾区民营经济绿色低碳发展广东粤港澳大湾区研究院研究员王继昌推动经济社会发展绿色化低碳化是实现高质量发展的关键环节。全国工商联近日首次出版发行了中国民营企业绿色发展报告(2022),以全国10623家民营企朔尔茨访印吃到闭门羹,莫迪拒绝制裁俄罗斯,普京长舒一口气俄乌军事冲突爆发一周年,西方国家还在争取让更多的国家加入制裁俄罗斯的队列中。据印度媒体报道,日前德国总理朔尔茨访问了印度,并与印度总理莫迪举行了会晤。朔尔茨此行貌似是为加强德国与印第五届四川航空熊猫之路杯全国新闻媒体围棋巡回赛在成都开赛2月25日,第五届四川航空熊猫之路杯全国新闻媒体围棋巡回赛在四川省成都市开赛。这个巡回赛由中国围棋协会指导,全国广电围棋协会四川航空股份有限公司主办,是中国新闻界最具影响力的围棋赛陕西周至千亩红梅竞相绽放特色旅游正当时央视网消息这两天,秦岭春意渐浓。在陕西西安市周至县,千亩红梅陆续开放。跟随总台记者,一起去探访这片藏在秦岭脚下的红梅花海。总台记者我现在身处的这片花海位于陕西省西安市周至县竹峪镇,红辣椒评论编者札记有话好好说,有理娓娓道老朽最近,老朽在处理评论来稿时,看到一篇批评某地殡仪服务中心收费高的稿件,一篇千字文,通篇充斥着令人愤懑利欲熏心猖狂至极毫无底线丧心病狂天怒人怨天雷罚罪污秽荼毒之类的字眼,看得人一深读丨他们都回来了!湖南春季旅游淡季不淡春节假期结束后,与往年旅游行业的传统淡季不同,湖南文旅复苏的热闹场景仍在继续。三年之后,实现旅行自由,欠下的那一场旅行终于可以出发了!你的下一站,定好了吗?现象国际张峰迷剧增,张家