02、Spring与SpringBoot

本文介绍了Spring Boot的核心功能,包括独立运行、内嵌服务器、自动配置等,强调其简化构建和提高开发效率的优势。同时,探讨了微服务的背景及其与Spring Boot的关联,以及分布式系统的挑战和解决方案。最后,提到了云原生应用的上云难点及应对策略。此外,文章还指出了Spring Boot的优缺点,适合快速构建和部署微服务应用。
摘要由CSDN通过智能技术生成

1、Spring能做什么?

1.1、Spring的能力

在这里插入图片描述

1.2、Spring的生态

https://spring.io/projects/spring-boot

覆盖了:
web开发
数据访问
安全控制
分布式
消息服务
移动开发
批处理

1.3、Spring5重大升级

1.3.1、响应式编程

1.3.2、内部源码设计

基于Java8的一些新特性,如:接口默认实现。重新设计源码架构。

2、为什么用SpringBoot?

Spring Boot是在Spring框架上创建的一个全新的框架,其设计目的是简化Spring应用的搭建和开发过程。

2.1、Springboot的核心功能

1)创建独立Spring应用
Spring Boot 可以以 jar 包的形式独立运行,运行一个 Spring Boot 项目只需通过 java–jar xx.jar 来运行。
2)内嵌web服务器
Spring Boot 可选择内嵌 Tomcat、Jetty 或者 Undertow,这样我们无须以 war 包形式部署项目。
3)自动starter依赖,简化构建配置
Spring 提供了一系列的 starter pom 来简化 Maven 的依赖加载,例如,当你使用了spring-boot-starter-web 时,会自动加入spring-boot-starter-web的依赖包。
4)自动配置Spring以及第三方功能
Spring Boot 会根据在类路径中的 jar 包、类,为 jar 包里的类自动配置 Bean,这样会极大地减少我们要使用的配置。当然,Spring Boot 只是考虑了大多数的开发场景,并不是所有的场景,若在实际开发中我们需要自动配置 Bean,而 Spring Boot 没有提供支持,则可以自定义自动配置。
5)准生产的应用监控
Spring Boot 提供基于 http、ssh、telnet 对运行时的项目进行监控。
6)无代码生成和 xml 配置
Spring Boot 的神奇的不是借助于代码生成来实现的,而是通过条件注解来实现的,这是 Spring 4.x 提供的新特性。Spring 4.x 提倡使用 Java 配置和注解配置组合,而 Spring Boot 不需要任何 xml 配置即可实现 Spring 的所有配置。

2.2、Spring Boot的优缺点

1)优点:
① 快速构建项目。
② 对主流开发框架的无配置集成。
③ 项目可独立运行,无须外部依赖Servlet容器。
④ 提供运行时的应用监控。
⑤ 极大地提高了开发、部署效率。
⑥ 与云计算的天然集成。
2)缺点:
① 版本迭代速度很快,一些模块改动很大。
② 由于不用自己做配置,报错时很难定位。
③ 网上现成的解决方案比较少。

3、如何学习Springboot?

查看官方文档:https://docs.spring.io/spring-boot/docs/current/reference/html/
在这里插入图片描述
翻译后如下:
在这里插入图片描述

4、时代背景

4.1、微服务

James Lewis and Martin Fowler (2014) 提出微服务完整概念。https://martinfowler.com/microservices/

  • 微服务是一种架构风格
  • 一个应用拆分为一组小型服务
  • 每个服务运行在自己的进程内,也就是可独立部署和升级
  • 服务之间使用轻量级HTTP交互
  • 服务围绕业务功能拆分
  • 可以由全自动部署机制独立部署
  • 去中心化,服务自治。服务可以使用不同的语言、不同的存储技术

4.2、分布式

分布式的困难

  • 远程调用
  • 服务发现
  • 负载均衡
  • 服务容错
  • 配置管理
  • 服务监控
  • 链路追踪
  • 日志管理
  • 任务调度

分布式的解决
• SpringBoot + SpringCloud

4.3、云原生

原生应用如何上云。 Cloud Native
上云的困难

  • 服务自愈
  • 弹性伸缩
  • 服务隔离
  • 自动化部署
  • 灰度发布
  • 流量治理

上云的解决: Cloud Native

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值