SpringBoot 简介

springBoot 是 spring 团队伴随着 spring4.0 一同发布的框架,已然成为该团队的一个非常重要的项目。其作用是帮助我们简单迅速地创建一个独立的产品级别的基于 spring 的应用

为什么要使用SpringBoot?

J2EE笨重的开发、繁多的配置、低下的开发效率、复杂的部署流程、第三方技术集成难度大,都成为了阻碍开发者效率的难关。Spring Boot的任务就是用来简化Spring应用开发,约定大于配置,去繁从简,just run就能创建一个独立的,产品级别的应用。SpringBoot 通过整合整个spring 系列的技术栈,从而简化了企业级开发。SpirngBoot 帮助我们自动配置好 spring 的相关环境,用户只需从一个微小的入口就能打开整个企业级开发的大门

SpringBoot 的优点

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

总结

SpringBoot 是简化Spring应用开发的一个框架;是整个Spring技术栈的一个大整合;是J2EE开发的一站式解决方案;


微服务

单体应用

这里首先介绍一下单体应用的概念。单体应用将所有的代码等统统写在一个应用里边,最后再部署到服务器上,从而运行应用,这就是所谓的 ALL IN ONE。这是传统的WEB应用架构模式,但这种模式会带来牵一发而动全身的问题,一旦某一部分出现修改,则整个应用都必须重新部署运行。而且面对日益增长的需求,我们越来越不可能将一个庞大的应用ALL IN ONE 全部写在里边。

什么是微服务?

微服务是一种架构风格,提倡一个应用应该是一组小型服务的组合,每一个服务运行在自己的进程内,每一个服务可以通过HTTP的方式进行互通。如果需要通过跨服务器分发单个服务进行扩展,只需要复制单个服务就行了,不需要复制整个项目,从而使每一个服务都是独立的、可替换的软件单元。

微服务的最终实现目标

最终的理想微服务架构应该是每个软件单元都能独立出来,每个单元对应不同的业务逻辑。单元与单元之间通过HTTP完成互调,最终通过不断地微化,形成一个紧密的应用网。不过如此庞大的一个分布式应用所带来的开发难度也是巨大的。

如何快速构建微服务

使用SpringBoot可以帮助我们快速完成一个微服务应用。使用SpringCloud可以帮助我们完成大型关系网之间的互调。包括一些流数据的计算与批处理我们可以使用Spring Cloud Date Flow来处理。可以说spring官方为我们想清楚了构建微服务的整个思路。

SpringBoot(一) 入门介绍的更多相关文章

  1. SpringData 基于SpringBoot快速入门

    SpringData 基于SpringBoot快速入门 本章通过学习SpringData 和SpringBoot 相关知识将面向服务架构(SOA)的单点登录系统(SSO)需要的代码实现.这样可以从实战 ...

  2. SpringBoot常用Starter介绍和整合模板引擎Freemaker、thymeleaf 4节课

    1.SpringBoot Starter讲解 简介:介绍什么是SpringBoot Starter和主要作用 1.官网地址:https://docs.spring.io/spring-boot/doc ...

  3. 01-项目简介Springboot简介入门配置项目准备

    总体课程主要分为4个阶段课程: ------------------------课程介绍------------------------ 01-项目简介Springboot简介入门配置项目准备02-M ...

  4. SPRING-BOOT系列之SpringBoot快速入门

    今天 , 正式来介绍SpringBoot快速入门 : 可以去如类似 https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/refer ...

  5. SpringBoot 初入门

    SpringBoot 初入门 关于介绍什么之类的就不讲了,主要做一下学习记录. 1. 启动方式 IDEA 启动 命令行启动: mvn spring-boot:run 部署到服务器启动: 先进行打包, ...

  6. 【Apollo】(1)--- Apollo入门介绍篇

    Apollo入门介绍篇 Apollo有一点很好,就是它是由国内携程团队开发,而且文档写的很全,代码也完全开源.如果去了解它也可以直接去看它的官方文档. 一.配置中心概念 1.背景 在实际开发中都会与配 ...

  7. 深入浅出!springboot从入门到精通,实战开发全套教程!

    前言 之前一直有粉丝想让我出一套springboot实战开发的教程,我这边总结了很久资料和经验,在最近总算把这套教程的大纲和内容初步总结完毕了,这份教程从springboot的入门到精通全部涵盖在内, ...

  8. Java开发学习(三十五)----SpringBoot快速入门及起步依赖解析

    一.SpringBoot简介 SpringBoot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化 Spring 应用的初始搭建以及开发过程. 使用了 Spring 框架后已经简化了我 ...

  9. C# BackgroundWorker组件学习入门介绍

    C# BackgroundWorker组件学习入门介绍 一个程序中需要进行大量的运算,并且需要在运算过程中支持用户一定的交互,为了获得更好的用户体验,使用BackgroundWorker来完成这一功能 ...

  10. 初识Hadoop入门介绍

    初识hadoop入门介绍 Hadoop一直是我想学习的技术,正巧最近项目组要做电子商城,我就开始研究Hadoop,虽然最后鉴定Hadoop不适用我们的项目,但是我会继续研究下去,技多不压身. < ...

随机推荐

  1. swoole(PHP异步网络通信引擎)的结构和运行流程

    swoole结构说明和运行流程 主要分为三个部分: 1.Master:swoole的主进程 处理swoole核心的事件驱动, 它包含多个线程(蓝色Reactor), 所有事件的监听都在Reactor实 ...

  2. Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini和my.ini文件以及服务无法启动的解决办法以及修改初始密码的方法

    下载解压mysql文件之后,中间出现了一些问题,终于解决,希望能帮助到需要的朋友. mysql官网下载地址:https://dev.mysql.com/downloads/mysql/点击打开链接 以 ...

  3. tomcat梳理

    tomcat梳理 Tomcat的缺省端口是多少,怎么修改? 默认接口是8080 修改 1)找到Tomcat目录下的conf文件夹 2)进入conf文件夹里面找到server.xml文件 3)打开ser ...

  4. Vertx使用EventBus发送接受自定义对象

    先看官方文档步骤: 需要一个编解码器,看源码: 可见内置了需要数据类型的实现,所以发送其他消息可以发送,但是如果发送自定义对象就需要自己实现编解码逻辑了 一 自定义编解码器 /** * 自定义对象编解 ...

  5. CAD制图系列之椭圆画法标注

    今天我将做一个极轴是92,150的椭圆画法和标注方法 1.打开2014版本CAD制图,快捷键EL,回车: 2.自己随便定一个点 3.输入第一个值,也就是短轴--横轴(输入实际长度,不需要除以二)并且鼠 ...

  6. SpringMVC 上传文件 MultipartFile 转为 File

    在使用 SpringMVC 上传文件时,接收到的文件格式为 MultipartFile,但是在很多场景下使用都需要File格式的文件,记录下以便日后使用. 以下mFile为MultipartFile文 ...

  7. 安卓开发实战-记账本APP(六)

    记账本APP开发---终结篇 昨天的动态数字录屏奉上:在抖音上拍了一个(ps:欢迎点赞) https://v.douyin.com/poEjmG/ 今天将图表的内容进行了制作,我用的是MPChart的 ...

  8. mysql常用语句及实题训练

    基本语句操作 创建数据库: create database database-name 1 删除数据库: drop database database-name 1 修改数据名: RENAME DAT ...

  9. WTL使用双缓冲避免重绘闪烁

    1.继承自CDoubleBufferImpl template <class T> class CDoubleBufferImpl { public: // Overrideables v ...

  10. python 迭代器和生成器详解

    一.迭代器 说迭代器之前有两个相关的名词需要介绍:可迭代对象:只要定义了__iter__()方法,我们就说该对象是可迭代对象,并且可迭代对象能提供迭代器.迭代器:实现了__next__()或者next ...