Bootstrap

PassJava 开源(五) :SpringCloud Alibaba 组件简介 #私藏项目实操分享#

作者简介:悟空,8年一线互联网开发和架构经验,用故事讲解分布式、架构设计、Java 核心技术。《JVM性能优化实战》专栏作者,开源了《Spring Cloud 实战 PassJava》项目,公众号:。本文已收录至

PassJava (佳必过) 项目全套学习教程连载中。

文档在线地址:www.passjava.cn

SpringCloud Alibaba 组件简介

1.SpringCloud Alibaba概述

Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里微服务解决方案,通过阿里中间件来迅速搭建分布式应用系统。

Github:https://github.com/alibaba/spring-cloud-alibaba

Spring Cloud的几大痛点

  • 部分组件停止维护和更新,有问题也不易解决

  • 部分环境搭建起来比较复杂,没有非常友好的可视化界面

  • 配置相对来说复杂,需要较高的学习成本

Spring Cloud Alibaba的优势

  • 阿里经历过了时间的考验

  • 设计合理

  • 拥有不错的可视化界面,方便运维监控和排查问题

  • 环境搭建和配置简单,学习成本低

PassJava项目搭配SpringCloud Alibaba技术的搭配方案

最后技术选型:

Spring Cloud Alibaba - Nacos 实现注册中心
Spring Cloud Alibaba - Nacos 实现配置中心
Spring Cloud Alibaba - Sentinel  实现服务容错
Spring Cloud Alibaba - Seata 实现分布式事务

Spring Cloud - Ribbon 实现负载均衡
Spring Cloud - Feign 实现远程调用
Spring Cloud - Gateway API网关
Spring Cloud - Sleuth 实现调用链监控

2.Spring Cloud Alibaba版本

项目的版本号格式为 x.x.x 的形式,其中 x 的数值类型为数字,从 0 开始取值,且不限于 0~9 这个范围。项目处于孵化器阶段时,第一位版本号固定使用 0,即版本号为 0.x.x 的格式。

由于 Spring Boot 1 和 Spring Boot 2 在 Actuator 模块的接口和注解有很大的变更,且 spring-cloud-commons 从 1.x.x 版本升级到 2.0.0 版本也有较大的变更,因此阿里采取跟 SpringBoot 版本号一致的版本:

  • 1.5.x 版本适用于 Spring Boot 1.5.x

  • 2.0.x 版本适用于 Spring Boot 2.0.x

  • 2.1.x 版本适用于 Spring Boot 2.1.x

  • 2.2.x 版本适用于 Spring Boot 2.2.x

Spring Cloud Alibaba 版本和Spring Cloud 和Spring Boot 版本兼容性列表

我们采用, ,

PassJava-Common的pom.xml文件引入Spring Cloud Alibaba依赖


    
        
        
            com.alibaba.cloud
            spring-cloud-alibaba-dependencies
            2.2.0.RELEASE
            pom
            import
        
    

代码地址

https://github.com/Jackson0714/PassJava-Platform