首页 > 编程知识 正文

springcloud面试题(spring有哪些组件)

时间:2023-05-05 00:54:49 阅读:102674 作者:1521

Springcloud是微服务架构的大师,集成了一系列优秀的组件。基于springboot,熟悉spring的程序员很容易上手。

通过一些简单的注释,我们可以快速配置应用程序中的公共模块,构建一个巨大的分布式系统。

SpringCloud的组件相当复杂,有很多子项目。聚焦网飞

springcloud的发行说明:

springcloud项目是几个独立项目的集合,每个项目都是独立的,并执行自己的迭代和版本发布。所以springcloud不方便用版本号来管理,要用版本名。避免与子项目版本号冲突。

版本名的来源是伦敦的地铁站名,按字母顺序排序。比如最早的Release版本是Angel,第二个Release版本是Brixton。

当一个版本的更新积累了很多或者一个严重的bug解决了,就会发布一个ServiceRelease版本,简称SR,后面的数字就是大版本下的第一个版本。

从官网看,springcloud的f版是基于跳羚2.0.x的,之前的版本是基于跳羚1.5.x的。

下面简单介绍五种常用的。

服务发现——Netflix Eureka客户服务负载平衡——Netflix断带器——Netflix Hystrix服务网关——Netflix Zuul分布式配置——Spring Cloud Config

尤里卡

角色:实现服务治理(服务注册和发现)

简介:春云尤里卡是春云网飞项目下的一个服务治理模块。

它由两部分组成:尤里卡服务器和尤里卡客户端。

Eureka服务器充当服务注册中心。支持集群部署。

Eureka客户端是一个处理服务注册和发现的java客户端。

当应用程序启动时,尤里卡客户端向服务器注册自己的服务信息,并在本地缓存服务器的服务信息。客户端和服务器将定期执行心跳交互,以更新服务租用和服务信息。

带状物

角色:Ribbon,主要提供客户端的软件负载均衡算法。

简介:Spring Cloud Ribbon是基于HTTP和TCP的客户端负载均衡工具,基于网飞Ribbon实现。借助Spring Cloud的封装,我们可以轻松地将面向服务的REST模板请求自动转换为客户端负载均衡的服务调用。

如上图所示,关键是根据负载均衡策略将外部休息呼叫转换为微服务呼叫。Ribbon有许多负载平衡策略,这将在后面解释。

高起鳞癣

功能:断路器、保护系统、控制故障范围。

简介:为了保证其高可用性,通常将单个服务部署在集群中。由于网络原因或自身原因,服务不能保证100%的可用性。如果单个服务有问题,调用该服务时会发生线程阻塞。此时,如果大量请求涌入,Servlet容器的线程资源将被完全消耗,导致服务瘫痪。服务与服务之间存在依赖关系,故障会扩散,给整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪崩”效应。

Zuul

功能:api网关、路由、负载均衡等功能。

简介:类似于nginx,反向代理的功能,但是网飞增加了一些功能来配合其他组件。

在微服务架构中,后端服务通常不直接向调用者开放,而是根据请求的url通过API网关路由到相应的服务。添加应用编程接口网关时,会在第三方调用方和服务提供商之间创建一堵墙。这面墙直接与调用者进行权限控制通信,然后以平衡的方式将请求分发到后台服务器。

配置

角色:配置管理

介绍:SpringCloud Config提供服务器和客户端。存储后端的默认实现使用git,因此它很容易支持标签版本的配置环境,并且可以访问各种管理内容的工具。

这还是静态的,要配合Spring Cloud Bus才能实现动态的配置更新。

想要深入学习的同学可以加入QQ群讨论。QQ讨论组:984370849 706564342欢迎加入讨论。我们有高层次、完整的资源笔记可以分享,我们组有各行各业的IT人员可以在这里快速解决问题。是的,我们在等你分享我们的经历和共同但不同的故事。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。