SpringCloud【基础】

发布于:2025-07-11 ⋅ 阅读:(23) ⋅ 点赞:(0)

概念

分布式:一个大型用用被拆分为很多小应用,分布部署在各个机器

服务注册:启动服务之后,会在注册中心注册,调用服务得时候会在注册中心发现

服务熔断:A调用B失败到一定比阈值后,不再重复调用造成服务雪崩

RPC:HTTP+JSON 远程调用

分布式事务:跨多个数据库得事务操作,确保要么全部成功,要么全部失败,确保数据一致性

专业概念 解决方案
微服务 SpringBoot
注册中心/配置中心 SpringCloudAlibaba   Nacos
网关 SpringCloud       Getway
RPC      SpringCloud       OpenFeign
服务熔断 SpringCloudAlibaba    Sentinel
分布式事务 SpringCloudAlibaba    Seata

项目搭建

参考版本

项目结构示意图

1,先创建父项目,管理版本

修改pom文件

<!-- 修改spring-boot-starter-parent 版本  3.3.4 -->
<packaging>pom</packaging>
<properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring-cloud.version>2023.0.3</spring-cloud.version>
        <spring-cloud-alibaba.version>2023.0.3.2</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>

2,在创建service

添加nacos和openfeign的依赖

<!--确保父项目是demo-->
    <packaging>pom</packaging>

 <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
  </dependencies>

3,在创建service下得子项目

确保在service添加的依赖,在子项目都有


网站公告

今日签到

点亮在社区的每一天
去签到