《微服务实战》 第三章 Spring Cloud 简介

简介: 《微服务实战》 第三章 Spring Cloud 简介

前言:Spring Cloud是一款基于 Spring Boot 实现的微服务框架

Spring Cloud 并不是一个拿来即可用的框架,它是一种微服务规范,共有以下 2 代实现:

  • 第一代实现:Spring Cloud Netflix
  • 第二代实现:Spring Cloud Alibaba

1、Spring Cloud 的常用组件如下表所示。

Spring Cloud 组件 描述
Spring Cloud Netflix Eureka Spring Cloud Netflix 中的服务治理组件,包含服务注册中心、服务注册与发现机制的实现。
Spring Cloud Netflix Ribbon Spring Cloud Netflix 中的服务调用和客户端负载均衡组件。
Spring Cloud Netflix Hystrix 人称“豪猪哥”,Spring Cloud Netflix 的容错管理组件,为服务中出现的延迟和故障提供强大的容错能力。
Spring Cloud Netflix Feign 基于 Ribbon 和 Hystrix 的声明式服务调用组件。
Spring Cloud Netflix Zuul Spring Cloud Netflix 中的网关组件,提供了智能路由、访问过滤等功能。
Spring Cloud Gateway 一个基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关框架,它使用 Filter 链的方式提供了网关的基本功能,例如安全、监控/指标和限流等。
Spring Cloud Config Spring Cloud 的配置管理工具,支持使用 Git 存储配置内容,实现应用配置的外部化存储,并支持在客户端对配置进行刷新、加密、解密等操作。
Spring Cloud Bus Spring Cloud 的事件和消息总线,主要用于在集群中传播事件或状态变化,以触发后续的处理,例如动态刷新配置。
Spring Cloud Stream Spring Cloud 的消息中间件组件,它集成了 Apache Kafka 和 RabbitMQ 等消息中间件,并通过定义绑定器作为中间层,完美地实现了应用程序与消息中间件之间的隔离。通过向应用程序暴露统一的 Channel 通道,使得应用程序不需要再考虑各种不同的消息中间件实现,就能轻松地发送和接收消息。
Spring Cloud Sleuth Spring Cloud 分布式链路跟踪组件,能够完美的整合 Twitter 的 Zipkin。

2、Spring Boot 和 Spring Cloud 的区别与联系

2.1、Spring Boot 和 Spring Cloud 分工不同

Spring Boot 是一个基于 Spring 的快速开发框架,它能够帮助开发者迅速搭 Web 工程。

Spring Cloud 是微服务架构下的一站式解决方案

  • Spring Cloud 是基于 Spring Boot 实现的
  • Spring Boot 和 Spring Cloud 依赖项数量不同
  • Spring Cloud 不能脱离 Spring Boot 单独运行

Spring Cloud版本选择

spring-cloud Spring Boot
Hoxton.SR12 >=2.2.0.RELEASE and <2.4.0.M1
2020.0.6 >=2.4.0.M1 and <2.6.0-M1
2021.0.0-M1 >=2.6.0-M1 and <2.6.0-M3
2021.0.0-M3 Spring Boot >=2.6.0-M3 and <2.6.0-RC1
2021.0.0-RC1 Spring Boot >=2.6.0-RC1 and <2.6.1
2021.0.5 Spring Boot >=2.6.1 and < 3.0.0-M1
2022.0.0-M1 Spring Boot >=3.0.0-M1 and < 3.0.0-M2
2022.0.0-M2 Spring Boot >=3.0.0-M2 and < 3.0.0-M3
2022.0.0-M3 Spring Boot >=3.0.0-M3 and < 3.0.0-M4
2022.0.0-M4 Spring Boot >=3.0.0-M4 and < 3.0.0-M5
2022.0.0-M5 Spring Boot >=3.0.0-M5 and < 3.0.0-RC1
2022.0.0-RC1 Spring Boot >=3.0.0-RC1 and < 3.0.0-RC2
2022.0.0-RC2 Spring Boot >=3.0.0-RC2 and < 3.1.0-M1
目录
相关文章
|
12天前
|
Java 开发者 微服务
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
114 68
从单体到微服务:如何借助 Spring Cloud 实现架构转型
|
2月前
|
Dubbo Java 应用服务中间件
Spring Cloud Dubbo:微服务通信的高效解决方案
【10月更文挑战第15天】随着信息技术的发展,微服务架构成为企业应用开发的主流。Spring Cloud Dubbo结合了Dubbo的高性能RPC和Spring Cloud的生态系统,提供高效、稳定的微服务通信解决方案。它支持多种通信协议,具备服务注册与发现、负载均衡及容错机制,简化了服务调用的复杂性,使开发者能更专注于业务逻辑的实现。
69 2
|
9天前
|
Java Nacos Sentinel
Spring Cloud Alibaba:一站式微服务解决方案
Spring Cloud Alibaba(简称SCA) 是一个基于 Spring Cloud 构建的开源微服务框架,专为解决分布式系统中的服务治理、配置管理、服务发现、消息总线等问题而设计。
117 13
Spring Cloud Alibaba:一站式微服务解决方案
|
16天前
|
消息中间件 监控 Java
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
31 6
|
16天前
|
负载均衡 Java 开发者
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
59 5
|
16天前
|
Java 关系型数据库 MySQL
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
36 5
|
16天前
|
缓存 监控 Java
如何将Spring Boot应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot应用程序部署到Pivotal Cloud Foundry (PCF)
27 5
|
16天前
|
Prometheus 监控 Java
如何全面监控所有的 Spring Boot 微服务
如何全面监控所有的 Spring Boot 微服务
30 3
|
1月前
|
运维 NoSQL Java
后端架构演进:微服务架构的优缺点与实战案例分析
【10月更文挑战第28天】本文探讨了微服务架构与单体架构的优缺点,并通过实战案例分析了微服务架构在实际应用中的表现。微服务架构具有高内聚、低耦合、独立部署等优势,但也面临分布式系统的复杂性和较高的运维成本。通过某电商平台的实际案例,展示了微服务架构在提升系统性能和团队协作效率方面的显著效果,同时也指出了其带来的挑战。
76 4
|
2月前
|
自然语言处理 Java API
Spring Boot 接入大模型实战:通义千问赋能智能应用快速构建
【10月更文挑战第23天】在人工智能(AI)技术飞速发展的今天,大模型如通义千问(阿里云推出的生成式对话引擎)等已成为推动智能应用创新的重要力量。然而,对于许多开发者而言,如何高效、便捷地接入这些大模型并构建出功能丰富的智能应用仍是一个挑战。
206 6