1、SpringBoot 是 Spring 的一套快速配置脚手架,可以基于 SpringBoot 快速开发单个微服务,SpringCloud 是一个基于SpringBoot 实现的云应用开发工具;
2、SpringBoot 专注于快速、方便集成的单个个体,SpringCloud 是关注全局的服务治理框架;
3、SpringBoot 使用了默认大于配置的理念,很多集成方案已经帮你选择好了,能不配置就不配置。SpringCloud 很大一部分是基于SpringBoot 来实现,并且提供了一整套解决方案 — 服务注册与发现、服务消费、服务保护与熔断、网关、分布式调用与追踪、分布式配置管理等;
4、SpringBoot 可以离开SpringCloud 独立使用开发项目,但是SpringCloud 离不开 SpringBoot,属于以来关系。
Spring Boot 的哲学就是约定大于配置:
1)通过 starter 和依赖管理解决依赖问题;
2)通过自动配置,解决配置复杂问题;
3)通过内嵌web容器,由应用启动tomcat,而不是tomcat启动应用,来解决部署运行的问题。
SpringCloud 体系就比较复杂了,基本可以理解为 SpringBoot 的三大魔法,将各种组件整合在一起,非常简单易用。
MicroService 是 SOA 的传承,最本质的区别就在于,它是真正的分布式的、去中心化的。