从软件发展的角度来讲,越简单的开发模式越流行,简单的开发模式解放出更多生产力,让开发人员可以避免将精力耗费在各种配置、语法所设置的门槛上,从而更专注于业务。这点上,Spring Boot已尽可能地简化了应用开发的门槛。Spring Boot 所集成的技术栈,涵盖了各大互联网公司的主流技术,跟着 Spring Boot 的路线去学习,基本可以了解国内外互联网公司的技术特点。
Spring、Spring Boot 和 Spring Cloud有什么关系? Spring最初核心的两大核心功能 Spring loC和 Spring Aop 成就了Spring,Spring在这两大核心功能上不断地发展,才有了Spring事务、Spring MVC等一系列伟大的产品,最终成就了Spring帝国,到了后期 Spring 几乎可以解决企业开发中的所有问题。
Spring Boot是在强大的 Spring 帝国生态基础上面发展而来,发明Spring Boot不是为了取代 Spring,是为了让人们更容易的使用 Spring。所以说没有 Spring强大的功能和生态,就不会有后期 Spring Boot 的火热,Spring Boot使用约定优于配置的理念,重新重构了Spring 的使用,让 Spring 后续的发展更有生命力。Spring Boot并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过 Spring Boot风格进行再封装并屏蔽掉复杂的配置和实现原理,最终给开发者提供了一套简单易懂、易部署、易维护的分布式系统开发工具包。
Spring Cloud是一系列框架的有序集合,它利用 Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发。服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用 Spring Boot 的开发风格做到一键启动和部署。Spring Cloud是为了解决微服务架构中服务治理而提供的具备一系列功能的开发框架,并且 Spring Cloud是完全基于Spring Boot 而开发,Spring Cloud利用 Spring Boot特性整合了开源行业中优秀的组件,整体对外提供了一套在微服务架构中服务治理的解决方案。
综上我们可以这样来理解,正是由于 Spring loC和 Spring Aop 两个强大的功能才有了Spring,Spring生态不断的发展才有了Spring Boot,使用 Spring Boot让Spring 更易用更有生命力,Spring Cloud是基于 Spring Boot 开发的一套微服务架构下的服务治理方案。