一、什么是微服务

在了解Springboot之前,首先我们需要了解一下什么是微服务。

微服务是一种架构风格(服务微化),是martin fowler在2014年提出来的。微服务简单地说就是:一个应用应该是一组小型的服务,他们通过HTTP的方形进行互通。每一个服务(功能元素)最终都是可独立替换和升级的软件单元。

而传统的单体应用是:All In One,即所有的功能都集成在一起然后部署在服务器。这样的架构有些时候已经不能满足现在市场的需求。

详细参照微服务文档

二、什么是Springboot

Springboot是基于Spring的,它的设计目的是为了简化Spring应用程序的开发过程。Springboot使用特定的方式进行配置,遵循“约定优于配置”的开发原则。Springboot不是Spring的替代品,而是整个Spring技术栈的一个大整合。不像以往的Spring程序,需要大量的配置,大部分Springboot应用只需要非常少量的配置代码,开发者能够更加专注于业务逻辑。

Spring Boot 诞生时,正处于微服务概念在慢慢酝酿中,Spring Boot 的研发融合了微服务架构的理念,实现了在 Java 领域内微服务架构落地的技术支撑。

Springboot四大核心

1.自动配置:针对很多Spring应用程序和常见的应用功能,Spring boot能自动提供相关配置;

2.起步依赖:告诉Spring boot需要什么功能,它就能引入需要的依赖库;

3.Actuator:让你能够深入运行中的Spring Boot应用程序,一探Spring boot程序的内部信息;

4.命令行界面:这是Spring Boot的可选特性,主要针对Groovy语言使用。

Springboot特性

1.能够快速创建基于Spring的应用程序;
2.能够直接使用java main方法启动内嵌的Tomcat,Jetty服务器运行Spring boot程序,不需要部署war包文件;
3.提供约定的starter POM来简化Maven配置,让Maven的配置变得简单;
4.根据项目的Maven依赖配置,Spring boot自动配置Spring,Spring mvc等;
5.提供了程序的健康等功能;
6.基本可以完全不使用XML配置文件,采用注解配置。

Springboot的这些特性能够方便、快速的构建微服务。所以,,Springboot是微服务在Java领域的实现方式之一。

Springboot笔记01——Springboot简介的更多相关文章

  1. 【SpringBoot笔记】SpringBoot整合Druid数据连接池

    废话少说,按SpringBoot的老套路来. [step1]:添加依赖 <!-- 数据库连接池 --> <dependency> <groupId>com.alib ...

  2. Mongodb 笔记01 MongoDB 简介、MongoDB基础知识、启动和停止MongoDB

    MongoDB 简介 1. 易于使用:没有固定的模式,根据需要添加和删除字段更加容易 2. 易于扩展:MongoDB的设计采用横向扩展.面向文档的数据模型使它能很容易的再多台服务器之间进行分割.自动处 ...

  3. Struts2学习笔记01 之 简介及配置

    一.Struts简介 * 是轻量级的MVC框架,主要解决了请求分发的问题,重心在控制层和表现层.运用ASOP的思想,使用拦截器来扩展业务控制器 二.使用步骤: 1.引入Sturts2的相关JAR包 2 ...

  4. D3笔记01——D3简介与安装

    1 D3简介 发布于2011年,全称Data-Driven Documents,直译为“数据驱动的文档”. 简单概括为一句话:D3是一个Javascript的函数库,是用来做数据可视化的.文档指DOM ...

  5. 【SpringBoot笔记】SpringBoot如何正确关闭应用

    关闭Spring Boot应用程序,我们可以通过OS命令kill -9 进程ID 实现将进程杀死.但是,有没有一种更好的方式,比如通过REST请求实现?Spring Boot Actoator提供了实 ...

  6. CSS学习笔记01 CSS简介

    1.CSS定义 CSS 指层叠样式表 (Cascading Style Sheets),是一种样式表语言,用来描述 HTML 或 XML(包括如 SVG.XHTML 之类的 XML 分支语言)文档的呈 ...

  7. SpringBoot笔记十六:ElasticSearch

    目录 ElasticSearch官方文档 ElasticSearch安装 ElasticSearch简介 ElasticSearch操作数据,RESTful风格 存储 检查是否存在 删除 查询 更新 ...

  8. SpringBoot | 1.1 SpringBoot简介

    前言 本博客仅为记录与总结SpringBoot的学习笔记,资料来源: 书籍<深入浅出SpringBoot>第三版 B站尚硅谷<雷丰阳2021版SpringBoot2零基础入门> ...

  9. 读书笔记《SpringBoot编程思想》

    目录 一. springboot总览 1.springboot特性 2.准备运行环境 二.理解独立的spring应用 1.应用类型 2.@RestController 3.官网创建springboot ...

随机推荐

  1. Nginx 配置操作注意事项

    Nginx reload 会中断现有连接吗? - 知乎https://www.zhihu.com/question/57096250 在NGINX上配置HTTPS---血的教训--要重启NGINX - ...

  2. PHPStorm提示:phpdoc comment doesn't contain all necessary @throw tag(s)

    选择Settings => Editor => Inspection, 选择PHP => PHPDoc => Missing @throws tag(s) ,把后面的勾勾去掉就 ...

  3. tomcat的AJP(定向包协议)协议

    由于tomcat的html和图片解析功能相对其他服务器如apche等较弱,所以,一般都是集成起来使用,只有jsp和servlet服务交由tomcat处理,而tomcat和其他服务器的集成,就是通过aj ...

  4. flutter Form表单

    import 'package:flutter/material.dart'; class FormDemo extends StatelessWidget { @override Widget bu ...

  5. Flutter 中的常见的按钮组件 以及自定义按钮组件

    Flutter 里有很多的 Button 组件很多,常见的按钮组件有:RaisedButton.FlatButton. IconButton.OutlineButton.ButtonBar.Float ...

  6. Python3基础 str : 对字符串进行切片

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  7. PLSQL流函数代码 540页 【我】

    540页 流函数代码 -- Create table create table STOCKTABLE ( TICKER ), TRADE_DATE DATE, OPEN_PRICE NUMBER, C ...

  8. 【源码解析】Flink 是如何基于事件时间生成Timestamp和Watermark

    生成Timestamp和Watermark 的三个重载方法介绍可参见上一篇博客: Flink assignAscendingTimestamps 生成水印的三个重载方法 之前想研究下Flink是怎么处 ...

  9. ubuntu下vs code配置c++

    链接地址:https://blog.csdn.net/u010648921/article/details/82628616 摘要:Ctrl+Shift+B, F5

  10. 【Leetcode_easy】1051. Height Checker

    problem 1051. Height Checker solution class Solution { public: int heightChecker(vector<int>&a ...