Spring Boot vs Spring Cloud核心区别

Spring Boot:快速构建独立的、生产级别的 Spring 应用

  • 核心目标:简化 Spring 应用的初始搭建和开发
  • 关键特性:内嵌 Tomcat/Jetty、自动配置(Auto-Configuration)、** starter 依赖**
  • 定位:单体应用开发框架
  • 一句话:让你用最少配置跑起一个 Spring 应用

Spring Cloud:基于 Spring Boot 的微服务解决方案

  • 核心目标:解决微服务架构中的分布式问题
  • 关键组件:
    • 服务发现(Eureka / Nacos)
    • 负载均衡(Ribbon / Spring Cloud LoadBalancer)
    • 网关(Spring Cloud Gateway)
    • 熔断降级(Resilience4j / Sentinel)
    • 配置中心(Config / Nacos)
    • 分布式追踪(Sleuth / Micrometer Tracing)
    • 分布式事务 / 消息驱动等
  • 定位:微服务治理框架
  • 一句话:让你管理一堆 Spring Boot 应用组成的分布式系统

关系:
Spring Cloud 依赖 Spring Boot,两者是互补而非替代关系。通常一起使用:Spring Boot 负责”写应用”,Spring Cloud 负责”管分布式”。

维度 Spring Boot Spring Cloud
层级 基础框架 上层微服务治理
关注点 单个应用 多个应用之间的协作
场景 单体/独立服务 微服务架构
依赖 不依赖 Spring Cloud 必须依赖 Spring Boot

简单说:先有 Spring Boot 应用,再用 Spring Cloud 把它们组织成微服务体系。