2、SpringCloud子项目简介


本文主要简单介绍spring cloud的子项目,后续文章会专门就每个子项目进行以示例的形式介绍其使用。
本文分为11个部分,即spring cloud的11个子项目。

一、spring cloud整体架构

在这里插入图片描述

  • SpringCloud对常见的分布式系统模式提供了简单易用的编程模型,帮助开发者构建弹性、可靠、协调的应用程序。
  • SpringCloud是在SpringBoot的基础上构建的,使开发者可以轻松入门并快速提高工作效率。 - SpringCloud为开发人员提供了快速构建分布式系统架构的工具,例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁定,领导选举,分布式会话,集群状态等。

二、子项目介绍

1、Spring Cloud Config

集中配置管理工具,分布式系统中统一的外部配置管理,默认使用Git来存储配置,可以支持客户端配置的刷新及加密、解密操作。

2、Spring Cloud Netflix

Netflix OSS 开源组件集成,包括Eureka、Hystrix、Ribbon、Feign、Zuul等核心组件。
1.Eureka:服务治理组件,包括服务端的注册中心和客户端的服务发现机制;
2.Ribbon:负载均衡的服务调用组件,具有多种负载均衡调用策略;
3.Hystrix:服务容错组件,实现了断路器模式,为依赖服务的出错和延迟提供了容错能力;
4.Feign:基于Ribbon和Hystrix的声明式服务调用组件;
5.Zuul:API网关组件,对请求提供路由及过滤功能。

3、Spring Cloud Bus

用于传播集群状态变化的消息总线,使用轻量级消息代理链接分布式系统中的节点,可以用来动态刷新集群中的服务配置。

4、Spring Cloud Consul

基于Hashicorp Consul的服务治理组件。

5、Spring Cloud Security

安全工具包,对Zuul代理中的负载均衡OAuth2客户端及登录认证进行支持。

6、Spring Cloud Sleuth

SpringCloud应用程序的分布式请求链路跟踪,支持使用Zipkin、HTrace和基于日志(例如ELK)的跟踪。

7、Spring Cloud Stream

轻量级事件驱动微服务框架,可以使用简单的声明式模型来发送及接收消息,主要实现为Apache Kafka及RabbitMQ。

8、Spring Cloud Task

用于快速构建短暂、有限数据处理任务的微服务框架,用于向应用中添加功能性和非功能性的特性。

9、Spring Cloud Zookeeper

基于Apache Zookeeper的服务治理组件。

10、Spring Cloud Gateway

API网关组件,对请求提供路由及过滤功能。

11、Spring Cloud OpenFeign

基于Ribbon和Hystrix的声明式服务调用组件,可以动态创建基于Spring MVC注解的接口实现用于服务调用,在SpringCloud 2.0中已经取代Feign。
在这里插入图片描述
从上图可以看出 Spring Cloud 各个组件相互配合,合作支持了一套完整的微服务架构。
1.其中 Eureka 负责服务的注册与发现,很好将各服务连接起来
2.Hystrix 负责监控服务之间的调用情况,连续多次失败进行熔断保护
3.Hystrix dashboard,Turbine 负责监控 Hystrix 的熔断情况,并给予图形化的展示
4.Spring Cloud Config 提供了统一的配置中心服务 当配置文件发生变化的时候
5.Spring Cloud Bus 负责通知各服务去获取最新的配置信息
6.所有对外的请求和服务,都通过 Zuul 来进行转发,起到 API 网关的作用
7.最后使用 Sleuth+Zipkin,将所有的请求数据记录下来,方便进行后续分析

三、Spring Cloud与 Spring Boot版本对应

在这里插入图片描述

posted @   一瓢一瓢的饮  阅读(37)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示