精选SpringCloud面试题

SpringCloud Netflix & Sprin gCloud Alibaba

什么是 Spring Cloud ?

Spring Cloud 是构建在 Spring Boot 基础之上,用于快速构建分布式系统的通用模式的工具集。或者说,换成大家更为熟知的,用于构建微服务的技术栈。

而后,不同厂商结合自身的中间件,提供自身的SpringCloud套件,例如:

  • Netflix 结合自己的 Eureka、Ribbon、Hystrix 等开源中间件,实现了 spring-cloud-netflix
  • Kubernetes 结合自己的 apiserver、configmap 等功能,实现了 spring-cloud-kubernetes
  • Alibaba 结合自己的 Nacos、Dubbo、Sentinel 等开源中间件,实现了 spring-cloud-alibaba

当然SpringCloud还是提供了自身的一些组件的:

  • API 网关:Spring Cloud Gateway
  • 配置中心:Spring Cloud Config、Spring Cloud Vault
  • 链路追踪:Spring Cloud Sleuth
  • 消息驱动:Spring Cloud Stream
  • 事件总线:Spring Cloud Bus
  • 服务调用:Spring Cloud OpenFeign、RestTemlete
  • 负载均衡:Spring Cloud Load Balancer

下面我们把 Spring Cloud 官方、Netflix、Alibaba 三者整理成如下表格:

SpringCloud 官方 Netflix Alibaba
配置中心 Spring Cloud Config、Spring Cloud Vault Archaius Nacos
注册中心 Eureka Nacos
服务调用 Spring Cloud OpenFeign、RestTemlete Dubbo
负载均衡 Spring Cloud Load Balancer Ribbon Dubbo
服务容错 Hystrix Sentinel
API网关 Spring Cloud Gateway Zuul
消息驱动 Spring Cloud Stream RabbiltMQ、Spring Cloud Stream Kafka Spring Cloud Stream RecketMQ
事件总线 Spring Cloud Bus Spring Cloud Bus RecketMQ
链路跟踪 Spring Cloud Sleuth
分布式事物 Seate
分布式调度 SchedulerX
Spring Cloud Alibaba 套件

Spring Cloud Alibaba 套件,阿里开源组件、阿里云商业组件整合进 Spring Cloud 体系当中,同时对 Spring Cloud Gateway、OpenFeign、Ribbon 等等进行集成。
主要功能如下:

  • 服务注册与发现:适配 Spring Cloud 服务注册与发现标准,默认集成了 Ribbon 的支持。
  • 分布式配置管理:支持分布式系统中的外部化配置,配置更改时自动刷新。
  • 服务限流降级:默认支持 WebServlet、WebFlux, OpenFeign、RestTemplate、Spring Cloud Gateway, Zuul, Dubbo 和 RocketMQ 限流降级功能的接入,可以在运行时通过控制台实时修改限流降级规则,还支持查看限流降级 Metrics 监控。
  • 消息驱动能力:基于 Spring Cloud Stream 为微服务应用构建消息驱动能力。
  • 分布式事务:使用 @GlobalTransactional 注解, 高效并且对业务零侵入地解决分布式事务问题。
Spring Cloud 和 Spring Boot 的区别和关系?

Spring Boot 专注于快速方便的开发单个个体微服务。

Spring Cloud 是关注全局的微服务协调整理治理框架以及一整套的落地解决方案,它将 Spring Boot 开发的一个个单体微服务整合并管理起来,为各个微服务之间提供:配置管理,服务发现,断路器,路由,微代理,事件总线等的集成服务。

Spring Boot 可以离开 Spring Cloud 独立使用,但是 Spring Cloud 离不开 Spring Boot ,属于依赖的关系。

什么是微服务?

查看文献:什么是微服务?

微服务的优缺点分别是什么?

优点

  • 每一个服务足够内聚,代码容易理解
  • 开发效率提高,一个服务只做一件事
  • 微服务能够被小团队单独开发
  • 微服务是松耦合的,是有功能意义的服务
  • 可以用不同的语言开发,面向接口编程
  • 易于与第三方集成
  • 微服务只是业务逻辑的代码,不会和 HTML、CSS 或者其他界面组合
  • 可以灵活搭配,连接公共库/连接独立库

缺点

  • 分布式系统的负责性
  • 多服务运维难度,随着服务的增加,运维的压力也在增大
  • 系统部署依赖
  • 服务间通信成本
  • 数据一致性
  • 系统集成测试
  • 0
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
SpringCloud面试题是指涉及SpringCloud框架的一系列问题。面试题的主题包括了SpringCloud的基本概念、特性、优势、微服务架构、服务注册与发现、负载均衡、熔断与降级、配置管理、消息队列、分布式事务等方面的知识。这些面试题旨在评估面试者对SpringCloud的理解和实践经验。根据引用和引用,可以找到一套包含大量经典的SpringCloud面试题及答案的参考资料。这套资料汇总了SpringCloud的常见面试题、工程师高级面试题以及一些大厂开发面试宝典。可以参考这些面试题来准备SpringCloud面试。而引用提到的DRY原则(Don't Repeat Yourself)也是编程中的一个重要原则,它鼓励代码的重用,促进开发和共享库的使用。这也是在SpringCloud开发中需要注意的一个原则。 所以,SpringCloud面试题是一系列涉及SpringCloud框架的问题,包括基本概念、特性、优势、微服务架构、服务注册与发现、负载均衡、熔断与降级、配置管理、消息队列、分布式事务等方面的知识。可以通过参考引用和引用提供的面试题资料来准备相关面试。另外,DRY原则也是在SpringCloud开发中需要遵循的重要原则。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [SpringCloud面试题及答案 300道,springcloud面试题总结 (持续更新)](https://blog.csdn.net/u012889902/article/details/121994645)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

  Wei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值