当前位置: 首页 > news >正文

SpringCloud 2023各依赖版本选择、核心功能与组件、创建项目(注意事项、依赖)

目录

  • 1. 各依赖版本选择
  • 2. 核心功能与组件
  • 3. 创建项目
    • 3.1 注意事项
    • 3.2 依赖

1. 各依赖版本选择

  1. SpringCloud: 2023.0.1
  2. SpringBoot: 3.2.4。参考Spring Cloud Train Reference Documentation选择版本
    SpringBoot版本选择
  3. SpringCloud Alibaba: 2023.0.1.0*: 参考Spring Cloud Alibaba选择版本。同时可以看到每个SpringCloud Alibaba组件的版本选择

SpringCloud Alibaba版本选择

  1. Java: Java17 ~ Java22

  2. Spring: 6.1.5+

  3. Maven: 3.6.3+。Java、Spring和Maven的版本选择参考SpringBoot System Requirements
    Java、Spring和Maven的版本选择参考

  4. Mysql: 8.0+(建议)

2. 核心功能与组件

  • 服务注册与发现:
    • Alibaba Nacos: 注册中心为AP模型,也可以配置为CP模型;配置中心为CP模型。推荐直接使用这个
    • Consul: go开发的,CP模型
  • 服务调用和负载均衡:
    • LoadBalancer
    • OpenFeign: 内部使用了LoadBalancer。已经被弃用,改用HTTP Interface(基于WebClient不支持负载均衡,需要结合LoadBalancer)
  • 分布式事务:
    • Alibaba Seata: 国内用的多,推荐直接使用这个
    • LCN: 用的人少
    • Hmily: 用的人少
  • 服务熔断和降级:
    • Alibaba Sentinel: 国内用的多,推荐直接使用这个
    • Circuit Breaker: 一种规范的抽象API。实现该API的常用组件有Resilience4J、Alibaba Sentinel
  • 服务链路追踪:
    • Micrometer Tracing: Spring Cloud原生的链路追踪组件,如果想用原生的,推荐使用这个
    • Skywalking: 不是Spring Cloud全家桶里面的。如果不想用原生的,推荐直接使用这个
  • 服务网关: Gateway
  • 分布式配置管理:
    • Alibaba Nacos: 使用简单、部署方便、性能较高,能够实现基本的配置管理,提供的控制台也非常简洁。但权限方面控制粒度较粗,且没有审核机制。公司前期推荐直接使用这个
    • Consul
    • Apollo: 不是Spring Cloud全家桶里面的。配置管理流程上比较完善,有相应配置的发布审核、权限管理等。但读写性能没有Alibaba Nacos好;存在学习成本;且部署较为复杂,需要3个模块同时工作,部署一套生产高可用集群至少需要7个节点

3. 创建项目

3.1 注意事项

  1. Settings -> Editor -> File Encodings -> Project Encoding和Default encoding for properties files选择UTF-8
  2. Settings -> Build, Execution, Deployment -> Compiler -> Annotation Processors -> 选择Enable annotation processing

3.2 依赖

父工程添加dependencyManagement依赖

            <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>2023.0.1</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>2023.0.1.0</version><type>pom</type><scope>import</scope></dependency>
http://www.lryc.cn/news/449456.html

相关文章:

  • 串行化执行、并行化执行
  • 二叉搜索树(c++版)
  • 每日1题-7
  • 简单实现log记录保存到文本和数据库
  • 敏感字段加密 - 华为OD统一考试(E卷)
  • go 安装三方库
  • Java 中的 volatile和synchronized和 ReentrantLock区别讲解和案例示范
  • 从GDAL中 读取遥感影像的信息
  • 算法闭关修炼百题计划(一)
  • vue3实现打字机的效果,可以换行
  • 【如何学习操作系统】——学会学习的艺术
  • stm32 flash无法擦除
  • Android—ANR日志分析
  • 9.29 LeetCode 3304、3300、3301
  • 近万字深入讲解iOS常见锁及线程安全
  • linux创建固定大小的文件夹用于测试
  • 大模型学习路线:这会是你见过最全最新的大模型学习路线【2024最新】
  • 了解云计算工作负载保护的重要性,确保数据和应用程序安全
  • Swagger3基本使用
  • 如何借助Java批量操作Excel文件?
  • JUC并发编程_Lock锁
  • Unity中的功能解释(数学位置相关和事件)
  • ElementPlus---Timeline 时间线组件使用示例
  • 推荐4款2024年大家都在用的高质量翻译器。
  • Mybatis 返回 Map 对象
  • Vue3(三)路由基本使用、工作模式(history,hash)、query传参和param传参、props配置、编程式路由导航
  • TypeScript概念讲解
  • C++ | Leetcode C++题解之第437题路径总和III
  • 回复《对话损友 2》
  • MySQL - 运维篇