SpringCloud Alibaba微服务工具集

2023-02-25 15:29:19 浏览数 (2)

文章目录

  • 1、SpringCloud Alibaba简介
    • 1.1spring cloud alibaba 概述
    • 1.2 spring cloud alibaba 特性
    • 1.3 Spring Cloud组件
  • 2、SpringCloud Alibaba环境搭建
    • 2.1 构建项目并引入依赖

1、SpringCloud Alibaba简介

1.1spring cloud alibaba 概述

官方文档:https://spring-cloud-alibaba-group.github.io/github-pages/hoxton/en-us/index.html Spring Cloud Alibaba 为分布式应用开发提供一站式解决方案。它包含开发分布式应用程序所需的所有组件,使您可以轻松地使用 Spring Cloud 开发应用程序。

使用Spring Cloud Alibaba,您只需添加一些注解和少量配置,即可将Spring Cloud应用连接到阿里巴巴的分布式解决方案,并通过阿里巴巴中间件构建分布式应用系统。

1.2 spring cloud alibaba 特性

  • 流量控制和服务降级:使用 Alibaba Sentinel进行流量控制、断路和系统自适应保护。
  • 服务注册域与发现:实例可以注册到阿里巴巴Nacos,客户端可以使用Spring管理的bean来发现实例。通过Spring Cloud Netflix支持Ribbon,客户端负载均衡器。
  • 分布式配置:使用阿里巴巴Nacos作为数据存储。
  • 事件驱动:构建与Spring Cloud Stream RocketMQ Binder连接的高度可扩展的事件驱动微服务。
  • 消息总线:使用Spring Cloud Bus RocketMQ链接分布式系统的节点。
  • 分布式事务:用Seata支持高性能、易用的分布式事务解决方案
  • Dubbo RPC:通过Apache Dubbo RPC扩展Spring Cloud服务到服务调用的通信协议。

sentinel 替换hystrix nacos替换eureka consul nacos替换config&bus 分布式事务seta

1.3 Spring Cloud组件

服务注册与发现:eurekal;consul;nacos 服务间通信组件: restTemplate ribbon;openfeign 服务降级和熔断:hystrix;hystrix dashboard;sentinel 服务网关组件:gateway 统一配置中心组件 消息总线组件:config; bus; nacos

2、SpringCloud Alibaba环境搭建

2.1 构建项目并引入依赖

springcloud版本:Hoxton.SR6 springboot版本:2.2.5.RELEASE spring cloud alibaba版本:2.2.1.RELEASE

代码语言:javascript复制
 <!--继承springboot父项目-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.5.RELEASE</version>
    </parent>
    <!--定义版本号-->
    <properties>
        <spring.cloud.version>Hoxton.SR6</spring.cloud.version>
        <spring.cloud.alibaba.version>2.2.1.RELEASE</spring.cloud.alibaba.version>
    </properties>

    <!--维护依赖-->
    <dependencyManagement>
        <dependencies>
             <!--维护springcloud-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring.cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--维护springcloud alibaba-->
            <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>

0 人点赞