首页 > 其他分享 >Spring Cloud & Spring Cloud Alibaba 介绍与安装

Spring Cloud & Spring Cloud Alibaba 介绍与安装

时间:2022-11-04 08:22:08浏览次数:77  
标签:Spring Boot Alibaba Cloud 版本 cloud

简介

Spring Cloud 为开发人员提供了一套工具,以快速构建分布式系统中的一些常见模式,例如,服务发现、配置管理、断路器、路由网关等。

Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通过阿里中间件来迅速搭建分布式应用系统。

特性

Spring Cloud 专注于为典型用例提供良好的开箱即用体验:

  • 服务注册与发现
  • 路由
  • 服务调用
  • 负载均衡
  • 断路器

Spring Cloud Alibaba 提供了如下功能:

  • 服务限流降级:支持 WebServlet、WebFlux、OpenFeign 限流降级功能的接入,可以在运行时通过控制台实时修改限流降级规则,还支持查看限流降级 Metrics 监控。
  • 服务注册与发现:适配 Spring Cloud 服务注册与发现标准,默认集成了 Ribbon 的支持。
  • 分布式配置管理:支持分布式系统中的外部化配置,配置更改时自动刷新。
  • 分布式事务:使用 @GlobalTransactional 注解, 高效并且对业务零侵入地解决分布式事务问题。

版本说明

Spring Cloud Alibaba 是按照 Spring Cloud 编程模型来实现的,因此,我们可以通过 Spring Cloud Alibaba 的版本来确认 Spring Cloud 及 Spring Boot 的版本。

名称 版本
Spring Cloud Alibaba 2021.0.4.0
Spring Cloud 2021.0.4
Spring Boot 2.6.11

同时,我们也可以因此确认 Spring Cloud Alibaba 所适配的组件对应的版本:

组件 版本
Sentinel 1.8.5
Nacos 2.1.0
Seata 1.5.2

此外,Spring Boot 对 jdk、构建工具也有要求。Spring Boot 2.6.11 需要 Java 8,并且兼容到 Java 18,同时支持 Maven 3.5 及以上版本:

名称 要求版本 实际版本
jdk 8+ 1.8.0_161
Maven 3.5+ 3.6.3

创建 Spring Cloud & Spring Cloud Alibaba 项目

现在您已经知道了要使用哪个版本系列以及该版本系列的最新服务版本。但是,为了更好的控制版本,我们可以手动的创建一个 Spring Boot 项目,这样创建的项目没有多余的东西,将更加清爽,一切都在我们的掌控中!

关于如何创建一个 Spring Boot 项目,请点击此处按“创建 Spring Boot 项目”一节中的说明操作。

现在您可以将 Spring Cloud BOM 添加到您的 pom.xml 中了。BOM 包含了它们所使用的所有依赖的版本。如果您是 Maven Central 用户,请将 BOM 添加到您的 pom.xml 中的 <dependencyManagement> 部分。 这将允许您省略任何 Maven 依赖项的版本,而是将版本控制委派给 BOM。

<properties>
    <spring.cloud-version>2021.0.4</spring.cloud-version>
    <spring.cloud.alibaba-version>2021.0.4.0</spring.cloud.alibaba-version>
</properties>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring.cloud-version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>${spring.cloud.alibaba-version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

就像 Spring Boot 一样,Spring Cloud & Spring Cloud Alibaba 项目包含了许多启动器,您可以将它们作为依赖添加到项目中,以添加各种云原生特性。在许多情况下,许多特性完全是通过将 starter 添加到类路径来启用的。启动器名称可参考各项目文档。

下面是如何将 Spring Cloud Gateway 添加到应用程序的示例:

<dependencies>
	<dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-gateway</artifactId>
    </dependency>
	...
</dependencies>

常用项目

Spring Cloud Gateway

Spring Cloud Gateway 是一款基于 Project Reactor 的可编程 API 路由网关。

Spring Cloud OpenFeign

Spring Cloud OpenFeign 通过自动配置和绑定到 Spring Environment 和其他 Spring 编程模型习惯用法,为 Spring Boot 应用程序提供集成。

Spring Cloud Alibaba Nacos

Nacos 是一个 Alibaba 开源的、易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

Spring Cloud Alibaba Sentinel

Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

Spring Cloud Alibaba Seata

Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。

标签:Spring,Boot,Alibaba,Cloud,版本,cloud
From: https://www.cnblogs.com/zn-pi/p/16851762.html

相关文章

  • SpringBoot2默认数据源Hikari
    https://github.com/brettwooldridge/HikariCPJMHBenchmarksMicrobenchmarkswerecreatedtoisolateandmeasuretheoverheadofpoolsusingthe JMHmicrobenchm......
  • SpringBoot 数据源测试
    如下代码,这样可以拿到DataSource,可以直接获取Connection,然后可以直接进行jdbc的处理:importcom.alibaba.druid.pool.DruidDataSource;importorg.junit.Test;importor......
  • springboot如何正确使用tomcat连接池
    原文地址:http://blog.champbay.com/2019/03/29/springboot%E5%A6%82%E4%BD%95%E6%AD%A3%E7%A1%AE%E4%BD%BF%E7%94%A8tomcat%E8%BF%9E%E6%8E%A5%E6%B1%A0/ 在springboot......
  • Spring Boot 中的配置体系,来了解一下
    SpringBoot中的配置体系在SpringBoot中,其核心设计理念是对配置信息的管理采用约定优于配置。在这一理念下,则意味着开发人员所需要设置的配置信息数量比使用传统Spri......
  • springboot多模块配置nginx
    1.后端有8088、8089两个端口不同的模块2.在nginx里配置地址。监听端口:9001,转发端口:8088、8099#usernobody;worker_processes1;#error_loglogs/error.log;#er......
  • 发起HTTP请求:Spring中RestTempalate设置请求头(转载)
    发起HTTP请求:Spring中RestTemplate设置与携带请求头(转载)发起HTTP请求:Spring中RestTemplate设置与携带请求头(转载)2021-01-08T16:56:48+08:00Rest设置请求头以及进一步......
  • org.springframework.core.env.PropertySource/PropertySources
    PropertySource是SpringBoot中键值对信息的顶层抽象,是一个抽象类。在逻辑上提供name属性和source属性,默认name用于唯一标识一个(复写equals方法,name相等即返回true),sourc......
  • 基于Springboot+Mybatisplus+Vue的在线购物平台管理系统
    基于Springboot+Mybatisplus+Vue的在线购物平台管理系统......
  • 手工安装配置Cloudera组件-Hadoop
    ClouderaManager安装经常出现错误,而且一点小错误,常常需要整个过程重来,不熟悉其内部过程,错误常常无从下手,所有决定yum安装手工配置一个测试集群,顺便尝试下牛叉的Impala。安......
  • 11-SSM_Spring_IoC与DI
    目录​​一,Spring介绍​​​​1,什么是框架​​​​2,spring是什么​​​​3,Spring的优势​​​​4,Spring的体系结构​​​​4.1核心容器​​​​4.2数据访问/集成​​​​4......