当前位置: 首页 > article >正文

SpringCloud面试题-SpringCloud主要的组件有哪些

服务注册与发现

Eureka

简介:Eureka是Netflix开源的服务发现组件,它提供了客户服务注册与发现的功能。

作用:在微服务架构中,微服务实例通常是动态变更的,Eureka提供了将这些实例注册到Eureka Server的能力,客户端可以通过Eureka Server获取其他实例的信息,实现负载均衡和故障转移。

工作原理

  1. 服务实例启动时,将自己注册到Eureka Server。
  2. Eureka服务器管理所有注册的服务实例。
  3. 客户端可以查询Eureka Server,获取其他服务的地址,实现动态调用。

负载均衡

Ribbon

简介:Ribbon是Netflix为REST服务提供的客户端负载均衡器。

作用:Ribbon可在微服务实例之间进行负载均衡,确保请求均匀分配。

工作原理

  1. Ribbon从Eureka Server获取服务实例列表。
  2. 使用轮询、随机或其他负载均衡策略在这些实例中选取合适的服务进行调用。
  3. 它还支持连接配置和重试机制,极大地提升了系统的可靠性。

配置管理

Spring Cloud Config

简介:Spring Cloud Config为分布式系统提供了外部化的配置管理。

作用:确保在不同环境中(如开发、测试、生产)可以方便地管理配置,支持动态更新。

工作原理

  1. 配置数据存储在Git、SVN等版本控制系统或本地文件中。
  2. 客户端应用在启动时或运行时向Config Server请求配置信息。
  3. 修改配置后,应用可以主动刷新,而无需重启。

服务网关

Spring Cloud Gateway

简介:Spring Cloud Gateway是一个基于Spring WebFlux的API网关。

作用:它可以提供路由、负载均衡、服务降级、监控和安全等功能,为微服务架构提供一个统一的入口。

工作原理

  1. 接收外部请求,根据路由配置将请求转发到相应的微服务。
  2. 处理请求时,可以执行过滤器逻辑,自定义认证、日志记录等。
  3. 提供并发限制和请求熔断的功能。

断路器

Hystrix

简介:Hystrix是一个提供延迟和容错控制的库,可以防止一个服务的故障导致整个系统崩溃。

作用:Hystrix通过“断路器”模式,使得微服务在面对错误时可以优雅地处理,提供备用方案。

工作原理

  1. 当服务调用失败次数超过设定阈值时,Hystrix会打开断路器,直接返回备用响应。
  2. 定期检测是否可以恢复服务,实现熔断机制。

监控与跟踪

Spring Cloud Sleuth

简介:Spring Cloud Sleuth为微服务提供了分布式跟踪功能。

作用:通过为每个请求生成唯一的跟踪ID和跨度ID,可以在多个服务中追踪请求流。

工作原理

  1. Sleuth会给每一个HTTP请求添加一段唯一的ID。
  2. 通过集成Zipkin等工具,可以集中监控和可视化请求的流转。

http://www.kler.cn/news/341222.html

相关文章:

  • 系统端口号被占用问题处理(WindowsLinux系统)
  • T8332FN凯钰Tmtech LED驱动芯片车规级AEC-Q100
  • MySql 多表设计
  • 尚硅谷 rabbitmq 2024 第34-37 延时队列 答疑
  • 架构师知识梳理(八):系统安全
  • 标准正态分布的数据 tensorflow 实现正态分布图,python 编程,数据分析和人工智能
  • OpenCVSharp使用DNN图像分类详解
  • 信息论笔记
  • 云栖实录 | 大模型驱动,开源融合的 AI 搜索产品发布
  • 使用激光跟踪仪提升码垛机器人精度
  • Webpack详解及代码案例
  • (2024-10-10)Nginx相关知识,前端应该学会的基础知识
  • 网络资源模板--Android Studio 打地鼠游戏App
  • LVS-DR+Keepalived 高可用群集部署
  • 通过PyTorch 手写数字识别 入门神经网络 详细讲解
  • 【网站架构部署与优化】keepalived高可用
  • 深度学习常见问题
  • SQL第15课挑战题
  • C#中的static关键字:静态成员与单例模式的实现
  • 【读书笔记·VLSI电路设计方法解密】问题7:什么是基于标准单元的专用集成电路 (ASIC) 设计方法论