SpringCloudAlibaba分布式微服务入门搭建项目框架

场景

SpringCloud 是若干个框架的集合,包括 spring-cloud-config、spring-cloud-bus 等近 20 个子项目,提供了服务治理、服务网关、智能路由、负载均衡、断路器、监控跟踪、分布式消息队列、配置管理等领域的解决方案。

Spring Cloud 通过 Spring Boot 风格的封装,屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、容易部署的分布式系统开发工具包。

Spring Cloud Alibaba 也是一套微服务解决方案,包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

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

Spring Cloud Alibaba中包含的组件


阿里开源组件


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

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

RocketMQ:开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。

Dubbo:这个就不用多说了,在国内应用非常广泛的一款高性能 Java RPC 框架。

Seata:阿里巴巴开源产品,一个易于使用的高性能微服务分布式事务解决方案。

Arthas:开源的Java动态追踪工具,基于字节码增强技术,功能非常强大。

官方说明

https://github.com/alibaba/spring-cloud-alibaba/blob/2.2.x/README-zh.md

SpringCloudAlibaba分布式微服务入门搭建项目框架_第1张图片

 

注:

博客:
霸道流氓气质的博客_CSDN博客-C#,架构之路,SpringBoot领域博主
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

1、打开IDEA,新建Project-Spring Initializr

SpringCloudAlibaba分布式微服务入门搭建项目框架_第2张图片

使用默认的url如果报错

Initialization failed for 'https://start.spring.io' Please check URL...

SpringCloudAlibaba分布式微服务入门搭建项目框架_第3张图片

修改URL为Custom的

https://start.aliyun.com/

SpringCloudAlibaba分布式微服务入门搭建项目框架_第4张图片

2、选择Type为Maven等项目配置

SpringCloudAlibaba分布式微服务入门搭建项目框架_第5张图片

3、这里为了从头练习,啥也不选,直接点击next

SpringCloudAlibaba分布式微服务入门搭建项目框架_第6张图片

4、 修改pom文件

添加版本号属性

    
        1.8
        UTF-8
        UTF-8
        2.3.7.RELEASE
        
        2.2.7.RELEASE
        
        Hoxton.SR12
    

SpringCloudAlibaba分布式微服务入门搭建项目框架_第7张图片

添加依赖

        
        
            com.alibaba.cloud
            spring-cloud-alibaba-dependencies
            ${spring.cloud.alibaba}
            pom
            import
        

        
        
            org.springframework.cloud
            spring-cloud-dependencies
            ${spring.cloud}
            pom
            import
        

SpringCloudAlibaba分布式微服务入门搭建项目框架_第8张图片

完整pom文件



    4.0.0
    com.badao
    spring-cloud-alibaba-demo
    0.0.1-SNAPSHOT
    spring-cloud-alibaba-demo
    Demo project for Spring Boot

    
        1.8
        UTF-8
        UTF-8
        2.3.7.RELEASE
        
        2.2.7.RELEASE
        
        Hoxton.SR12
    

    
        
            org.springframework.boot
            spring-boot-starter
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
            
                
                    org.junit.vintage
                    junit-vintage-engine
                
            
        

        
        
            com.alibaba.cloud
            spring-cloud-alibaba-dependencies
            ${spring.cloud.alibaba}
            pom
            import
        

        
        
            org.springframework.cloud
            spring-cloud-dependencies
            ${spring.cloud}
            pom
            import
        

    

    
        
            
                org.springframework.boot
                spring-boot-dependencies
                ${spring-boot.version}
                pom
                import
            
        
    

    
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.8.1
                
                    1.8
                    1.8
                    UTF-8
                
            
            
                org.springframework.boot
                spring-boot-maven-plugin
                2.3.7.RELEASE
                
                    com.badao.springcloudalibabademo.SpringCloudAlibabaDemoApplication
                
                
                    
                        repackage
                        
                            repackage
                        
                    
                
            
        
    

此时父工程就搭建完成了,整个项目是由maven进行管理的,这里什么都不选,因为后面要做底座+多个子模块的架构,

这个父工程就是底座。

在搭建时尤其要注意版本兼容问题,即SpringCloud与SpringBoot的版本兼容问题。

官方版本说明

https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

SpringCloudAlibaba分布式微服务入门搭建项目框架_第9张图片

你可能感兴趣的:(微服务架构,微服务)