一、Spring Boot 介绍

简介:

Spring Boot是由Pivotal团队提供的全新框架 ,其设计目的是用来简化Spring应用的初始搭建以及开发过程。该框架使用特定的方式来进行配置,从而使开发人员不在需要定义样板化的配置。

 在Spring4.0之前,J2EE开发,搭建一个ssm框架是相当麻烦,maven导入一堆的jar包,各种配置文件,部署好环境等等,稍微出点错,项目就无法启动。springboot 出现之后,就简化了整个后端项目开发的搭建,减少了很多配置。springboot 整合其他spring类技术栈,来简化Spring应用开发,约定大于配置,去繁从简,只要run就能创建一个独立的,产品级别的应用。

优点:

  • 大量的自动配置,简化开发,可修改默认值;
  • 快速创建独立运行的Spring项目以及与主流框架集成;
  • 使用嵌入式的Servlet容器,应用无需打成war包;
  • 无需配置xml,无代码生成;
  • starters自动依赖与版本控制;
  • 准生产环境的运行时应用监控;
  • 与云计算的天然集成。

二、微服务

单体应用模式和微服务模式

springboot的架构设计图 springboot架构_服务器

 

单体应用:

以前我们开发一个应用, 就会把像OA、CRM、ERP放到一个应用里面开发,然后打成war包,部署到服务器,连接数据库提供页面数据,整个应用就可以运行,这是我们传统的一个架构模式。

 

优点:

  • 开发测试简单,只是一个应用,不需要进行联调等一些模式。
  • 部署也简单,整个打成一个war包,部署到服务器上就可以,不会对运维造成复杂问题。

 缺点:

  • 整个项目看起来很臃肿,添加修改项目麻烦,牵一发而动全身,而现在很多项目需要添加各种各样的功能,所以操作起来很痛苦。
  • 需要通过多个服务器 上复制这个单体进行拓展,来解决负载均衡问题。

 

微服务:

微服务架构就是把每个功能元素放进一个独立的服务中。并且通过跨服务器分发这些服务进行拓展,只是在需要的时候才复制,也就是说如果只需要某几个功能,则只复制所需的几个独立服务。每一个功能元素最终都是一个可独立替换和独立升级软件单元。但是它给运维和部署带来了很大的挑战。

微服务架构图

 

springboot的架构设计图 springboot架构_微服务_02

注:每一个小圆圈表示不同的功能服务。

下一篇:Spring Boot ——Spring Boot 项目的创建