- Spring能做什么
- Spring的能力
- Spring的生态
- Spring5 重大升级
- 响应式编程
- 内部源码设计
- 为什么用SpringBoot
- 为什么用SpringBoot ?
- SpringBoot 优点:
- SpringBoot缺点
- 时代背景
- 微服务
- 分布式
- 分布式的困难
- 分布式的解决
- 云原生
- 上云的困难
- 上云的解决
- 如何学习SpringBoot
- 官网文档架构
ssdss1、Micoservices: 把一个应用的所有功能拆成一个一个的小模块,我们称每个小模块为微服务
ssdss2、Reactive:异步非阻塞方式构建,允许占用服务器的少量内存、CPU资源生成高吞吐量的应用
ssdss3、Cloud:作分布式云开发
ssdss⒋、Web apps: web开发
ssdss⒌、Serverless:无服务开发,函数式服务,通过云平台按量计费
ssdss⒍、Event Driven:事件驱动
ssdss⒎、batch: 批处理业务
ssdssssdss等等…
ssdsdsss[注]:在大型企业中,由于业务复杂、数据量大、数据格式不同、数据交互格式繁杂,并非所有的操作都能通过交互界面进行处理。而有一些操作需要定期读取大批量的数据,然后进行一系列的后续处理。这样的过程就是“批处理”。
Spring的生态ssdssssdssweb开发ssdssssdss数据访问ssdssssdss安全控制ssdssssdss分布式ssdssssdss消息服务ssdssssdss移动开发
ssdssssdss批处理
Spring5 重大升级 响应式编程ssdsdsddss
内部源码设计ssdss基于Java8的一些新特性,如:接口默认实现。重新设计源码架构。
sssss[接口默认实现]:接口中的实现方法必须由default修饰
dasd
SpringBoot 优点:dasd
sssssSpringBoot是整合Spring技术栈的一站式框架sssssSpringBoot是简化Spring技术栈的快速开发脚手架
sssss● 人称版本帝,迭代快,需要时刻关注变化
sssss● 封装太深,内部原理复杂,不容易精通
时代背景 微服务sssdsdsss
sssss● 微服务是一种架构风格sssss● 一个应用拆分为一组小型服务sssss● 每个服务运行在自己的进程内,也就是可独立部署和升级sssss● 服务之间使用轻量级HTTP交互sssss● 服务围绕业务功能拆分sssss● 可以由全自动部署机制独立部署sssss● 去中心化,服务自治。服务可以使用不同的语言、不同的存储技术
sssss微服务、分布式:现在业务负责,根据业务模块进行划分为一个个节点进行单独处理业务,一个节点可以采取集群的方式进行部署,为了保证节点间通讯花销低,采用HTTP API进行信息传输
分布式 分布式的困难sssdsdsss● 远程调用 :一般使用http进行服务交互sssdsdsss● 服务发现:就是看哪些服务是可用的
sssdsdsss● 负载均衡:让多台服务器启动互相配合sssdsdsss● 服务容错:各种错误情况下的处理方式
sssdsdsss● 配置管理:配置中心,修改配置让服务们自己同步
sssdsdsss● 服务监控:多个服务以及云平台的资源消耗和健康状况
sssdsdsss● 链路追踪:一个复杂的业务流程可能需要连续调用多个微服务,我们需要记录一个完整业务逻辑涉及的每一个微服务的运行状态,再通过可视化链路图展现,帮助软件工程师在系统出错时分析解决问题,常见的解决方案有Zipkin,SkyWalking。
sssdsdsss● 日志管理:微服务架构默认将应用日志分散保存在每一个微服务节点上,当系统进行用户行为分析、数据统计时必须收集所有节点日志数据,非常不方便。这时候我们需要一个独立的日志平台,收集所有节点的日志数据并可方便对其进行汇总分析,然后进行可视化展示
sssdsdsss● 任务调度
sssdsdsss● …
分布式的解决
ssdsdsss[注]:通过SpringBoot创建一个个的模块,然后通过SpringCloud进行,将一系列优秀的组件进行了整合。
ssdss原生应用如何上云。 Cloud Native
上云的困难sssdsdsss● 服务自愈:其中一个服务出现错误怎么复原sssdsdsss● 弹性伸缩:根据不同的性能需求分配更多的服务器
sssdsdsss● 服务隔离:服务之间不相互影响sssdsdsss● 自动化部署
sssdsdsss● 灰度发布:同样的服务有多台服务器运行,先把服务部署在其中一两台上看运行效果,没有问题了再慢慢全部升级
sssdsdsss● 流量治理:控制流量sssdsdsss● …
上云的解决sssdsdsss
如何学习SpringBoot 官网文档架构



