SpringCloud是什么

发布时间 2024-01-02 18:03:49作者: hoodoo-

问题总结

  1. Spring Cloud常用组件?
  2. Spring Boot和Spring Cloud的区别和联系?

问题答案

  1. Spring Cloud常用组件?
Spring Cloud组件 描述
Eureka 服务治理组件,包含服务注册中心、服务注册与发现机制的实现。
Ribbon 服务调用和客户端负载均衡组件。
Hystrix “豪猪哥”,容错管理组件,为服务中出现的延迟和故障提供强大的容错能力。
Feign 基于 Ribbon 和 Hystrix 的声明式服务调用组件。
Zuul 网关组件,提供了智能路由、访问过滤等功能。
Gateway 网关框架,它使用 Filter 链的方式提供了网关的基本功能,例如安全、监控/指标和限流等。
Config 配置管理工具,支持使用 Git 存储配置内容,实现应用配置的外部化存储,并支持在客户端对配置进行刷新、加密、解密等操作。
Bus 事件和消息总线,主要用于在集群中传播事件或状态变化,以触发后续的处理,例如动态刷新配置。
Stream 消息中间件组件,集成了 Apache Kafka 和 RabbitMQ 等消息中间件,并通过定义绑定器作为中间层,完美地实现了应用程序与消息中间件之间的隔离。通过向应用程序暴露统一的 Channel 通道,使得应用程序不需要再考虑各种不同的消息中间件实现,就能轻松地发送和接收消息。
Sleuth Spring Cloud 分布式链路跟踪组件,能够完美的整合 Twitter 的 Zipkin。
  1. Spring Boot和Spring Cloud的区别和联系?
  • Spring Boot 专注于快速、方便地开发单个微服务。Spring Cloud 是微服务架构下的一站式解决方案。Spring Cloud 专注于全局微服务的协调和治理工作,提供配置管理、服务发现、断路器、路由、微代理、事件总线、决策竞选以及分布式会话等服务。
  • Spring Cloud 是基于 Spring Boot 实现的。
  • Spring Cloud 依赖数量明显大于SpringBoot。
  • Spring Boot 能够用于开发单个微服务,但它不具备管理和协调微服务的能力,因此它只能算是一个微服务快速开发框架,而非微服务框架。