SpringBoot构建微服务实战 之 Hello SpringBoot (一)

SpringBoot构建微服务实战 之 Hello SpringBoot(一)

SpringBoot 时 Apache 下的一个开源项目,其作用是创建和启动新的基于Spring框架的项目。SpringBoot 会选择最合适的Spring 子项目和第三方开源库进行整合。二大部分SpringBoot 应用只需要非常少的配置就可以快速地运行起来。


概念

  • 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
    SpringBoot构建微服务实战 之 Hello SpringBoot (一)

  • 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。
    • 微服务。