SpringBoot构建微服务实战 之 Hello SpringBoot(一)
SpringBoot 时 Apache 下的一个开源项目,其作用是创建和启动新的基于Spring框架的项目。SpringBoot 会选择最合适的Spring 子项目和第三方开源库进行整合。二大部分SpringBoot 应用只需要非常少的配置就可以快速地运行起来。
概念
-
- Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can “just run”. We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration.
一张图理解SpringBoot
-
官方介绍
Create stand-alone Spring applications
Embed Tomcat, Jetty or Undertow directly (no need to deploy WAR files)
Provide opinionated ‘starter’ POMs to simplify your Maven configuration
Automatically configure Spring whenever possible
Provide production-ready features such as metrics, health checks and externalized configuration
Absolutely no code generation and no requirement for XML configuration
我们的体验
为基于Spring的开发提供了更为快捷的入门体验。
创建可以独立运行的Spring应用。
直接嵌入Tomcat或者Jetty服务器,不要打包war文件。
提供推荐的基础POM文件(starter)来简化Apache Maven配置。
尽可能地根据项目依赖自动配置Spring框架。
提供可以在Production 下使用的功能比如性能指标、应用信息和应用健康检查。
SpringBoot 高度封装无须XML配置,同时也能高度自定义。
SpringBoot 能支持主流Spring项目比如 Spring Cloud。
SpringBoot 的优点
SpringBoot 使编码变得简单。
SpringBoot 使配置变得简单。
SpringBoot 使部署变得简单。
SpringBoot 使监控变得简单。
SpringBoot 的缺点
由于高度封装导致依赖太多,进而导致SpringBoot 的应用最小也有几十 M.
缺少服务的注册和发现解决方案。(后面的课程我们将详细学习SpringBoot + Zookeeper来实现 微服务的部署。)
缺少监控集成方案,安全管理方案。
SpringBoot 应用的场景
- 所有Spring应用的场景。
- JAVA Web。
- 微服务。