Spring Cloud 基础知识

一、Spring Cloud相关概念

1、基本概念
1.1、什么是Spring Cloud

Spring Cloud是一系列框架的集合。它利用Spring Boot的开发便利性简化了分布式系统基础设施的开发,如服务发现、服务注册、配置中心、消息总线、负载均衡、 熔断器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过SpringBoot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包

1.2、Spring Cloud和Spring Boot关系

Spring Boot 是 Spring 的一套快速配置脚手架,可以基于Spring Boot 快速开发单个微服务,Spring Cloud是一个基于Spring Boot实现的开发工具;Spring Boot专注于快速、方便集成的单个微服务个体,Spring Cloud关注全局的服务治理框架; Spring Boot使用了默认大于配置的理念,很多集成方案已经帮你选择好了,能不配置就不配置,Spring Cloud很大的一部分是基于Spring Boot来实现,必须基于Spring Boot开发。可以单独使用Spring Boot开发项目,但是Spring Cloud离不开 Spring Boot

2、Spring Cloud相关基础服务组件

服务发现——Netflix Eureka (Nacos)

服务调用——Netflix Feign

熔断器——Netflix Hystrix

服务网关——Spring Cloud GateWay

分布式配置——Spring Cloud Config (Nacos)

消息总线 —— Spring Cloud Bus (Nacos)

二、Nacos

Nacos是微服务的注册中心。

Nacos是阿里巴巴的开源项目,是一个更易于构建云原生应用的动态服务发现配置管理服务管理平台。

Nacos的两个基本概念:

  • nameSpace:用于区分环境,比如 开发环境、测试环境、生产环境
  • group:用于区分项目,比如 xc-store-plus项目、xc-store2.0项目

其他注册中心:
(1)Eureka(原生,2.0遇到性能瓶颈,停止维护)
(2)Zookeeper(支持,专业的独立产品。例如:dubbo)
(3)Consul(原生,GO语言开发)

三、Gateway

Spring cloud gateway是spring官方基于Spring 5.0、Spring Boot2.0和Project Reactor等技术开发的网关,Spring Cloud Gateway旨在为微服务架构提供简单、有效和统一的API路由管理方式,并且还基于Filter链的方式提供了网关基本的功能,例如:安全、监控/埋点、限流等。

在这里插入图片描述

Spring Cloud Gateway中几个重要的概念:
(1)路由 路由是网关最基础的部分,路由信息有一个ID、一个目的URL、一组断言和一组Filter组成。如果断言路由为真,则说明请求的URL和配置匹配

(2)断言 Java8中的断言函数。Spring Cloud Gateway中的断言函数输入类型是Spring5.0框架中的ServerWebExchange。Spring Cloud Gateway中的断言函数允许开发者去定义匹配来自于http request中的任何信息,比如请求头和参数等。

(3)过滤器 一个标准的Spring webFilter。Spring cloud gateway中的filter分为两种类型的Filter,分别是Gateway Filter和Global Filter。过滤器Filter将会对请求和响应进行修改处理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Cloud是一个基于Spring Framework的开发工具集,用于构建分布式系统的微服务架构。它提供了一系列的组件和工具,用于简化分布式系统开发、部署和管理的复杂性。以下是Spring Cloud的一些基础知识: 1. 服务注册与发现:Spring Cloud通过服务注册与发现组件,如Eureka、Consul等,实现了服务的自动注册和发现。服务提供者在启动时将自己注册到注册中心,服务消费者通过注册中心获取可用的服务实例。 2. 负载均衡:Spring Cloud通过Ribbon实现了客户端负载均衡。它可以根据负载均衡策略选择合适的服务实例进行请求转发,提高系统的可用性和性能。 3. 服务调用:Spring Cloud通过Feign或RestTemplate实现了服务之间的远程调用。开发者可以像调用本地方法一样调用远程服务,简化了服务间通信的复杂性。 4. 服务熔断与降级:Spring Cloud通过Hystrix实现了服务的熔断与降级。当某个服务发生故障或响应过慢时,可以通过熔断器快速失败并返回默认值,避免级联故障。 5. 配置中心:Spring Cloud Config提供了集中式的配置管理,可以将应用程序的配置集中存储在配置中心,并通过动态刷新机制实现配置的动态更新。 6. 链路追踪:Spring Cloud Sleuth和Zipkin可以实现分布式系统的链路追踪。通过生成唯一的跟踪ID,可以追踪请求在不同服务之间的流转路径,方便排查分布式系统的问题。 以上只是Spring Cloud的一些基础知识,它还包括了很多其他功能和组件,如服务网关、消息总线、分布式配置等。通过使用Spring Cloud,开发者可以更方便地构建和管理分布式系统的微服务架构。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值