[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GjyeLuSg-1636378253985)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106155802533.png)]
微服务 微服务架构的产生——巨石应用第一代单体应用,所有的War包放到一个Tomcat下运行。这种架构也叫巨石型应用架构,在开发小型项目上有独特优势:易于调试、部署,运维方便。
缺点:
- 不可靠。任何模块的一个bug,可能拖垮整个应用
- 单维扩展。只能通过运行更多的服务器水平扩展,而不同的应用服务对资源的需求不同
- 不可持续发展。引入新的框架或语言需要重构所有业务模块,往往需要在初期就选定技术栈
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aDlGG5uZ-1636378253987)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106163147552.png)]
微服务架构的产生-SOASOA(Service Oriented Architectrue),面向服务架构,它是一种设计方法,设计上通常是自上而下的,服务间松散耦合。ESB集合不同协议的服务,做消息的转换、解释、路由从而联通各个服务,解决企业通信问题,服务松耦合、可扩展
缺点:
- ESB的存在并没有根本解决单体巨石应用的一些问题
- SOA更多的面向企业服务,服务拆分粒度很大,更多的是为了复用
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tPYrUeTm-1636378253988)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106162822703.png)]
微服务架构的产生-微服务去中心化的SOA拓展,强调服务彻底的组件化,一个组件就是一个产品,服务切分力度更小,设计上更多的是自下而上的。服务间通过轻量化的协议进行通信,并根据服务本身需要独立部署
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qC0R2mgK-1636378253990)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106163535101.png)]
SOA和微服务的思维区别SOA:
因为单体巨石应用无法灵活扩展,且部署困难。自上而下,从运维侧视角出发,更多聚焦可维护性,兼顾可扩展性,从前后端分离切入。
微服务:
因为SOA服务粒度太粗,难以有效扩展,微服务应运而生。自下而上,从产品视角出发,更多聚焦可扩展性,兼顾可维护性。
微服务分层架构图[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iapYDNqq-1636378253992)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106163648329.png)]
Spring Boot build anythingNetflix——掀起大规模微服务之风
- 方便的创建可独立运行的 spring 应用程序
- 直接内嵌 Tomcat Jetty 或 Undertow
- 简化了项目的构建配置
- 位 spring 及第三方库提高自动配置
- 提供生产级特性
- 无需生成代码或者进行XML配置
由于
Netflix 为啥热衷于开源?
Spring Cloud 家族
- 将自己的解决方案建立为行业标准和最佳实践
- 建立Netflix技术品牌
- 雇佣、留住和吸引顶级工程师
- 从共享生态中获得反馈输入并受益
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wHramIaD-1636378253992)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106164221366.png)]
数据访问层选型- JDBC的“烦恼”
- Mybatis执行流程解析
原始的基于JDBC连接的数据库的操作
所有的数据访问框架都是在解决如下的两个问题
- 数据库连接如何管理
- 数据库查询数据和Java对象如何高效映射
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1Ct9HC9W-1636378253994)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106164357552.png)]
Mybatis与Mybatis-plusMybatis框架执行流程解析MyBatis——我的SQL我做主
Mybatis-plus——你的SQL你做主,我为你服务
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Gqk4ySWy-1636378253995)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106164605353.png)]
数据库连接池选型定义:JDBC连接池,解决需要自己手动建立连接(TCP连接)、关闭连接、连接复用的问题。数据库连接池有一个标准的接口 javax.sql.DataSource,常用的JDBC连接池如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WMbJnRpV-1636378253996)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106164747048.png)]
T31项目数据访问层实践 MQ如何选型 简介[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UyDzNrrQ-1636378253997)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106164947672.png)]
选型[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rdv7IwYe-1636378253998)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106165044001.png)]
阿里的RocketMQ[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ieC6uMhP-1636378253999)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106165306799.png)]
远程通信框架选型 RPC运行期状态[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W4H3tQmn-1636378253999)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106165155272.png)]
RPC框架核心技术点| 与注册中心集成 | 与配置中心集成 | 与链路追踪继承 |
|---|---|---|
| 服务发布和引用 | 通信协议 | 请求监控 |
| 服务调用方式 | IO线程模型 | 容错降级 |
| 路由寻址 | 超时机制 | 租户泳道机制 |
| 序列化/反序列化 | 重试机制 |
- 远程通信框架要解决的问题
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w6qote84-1636378254000)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106165718323.png)]
常用开源远程通信框架综合对比[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CmfyKymE-1636378254001)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106165802055.png)]
网关层技术选型API网关的由来
- API网关的由来
- 网关的分类
- 网关的定义及功能
- API网关的技术选型
- API网关核心关注点
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9x1FFKeW-1636378254002)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106170006586.png)]
网关的分类:流量网关和业务网关[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1nbnEiqH-1636378254003)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106170116787.png)]
API网关部署形式:单节点网关与多节点网关[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-67TfVnpU-1636378254004)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106170153667.png)]
开源网关图谱[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wrEeLZQM-1636378254004)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106170221749.png)]
业务网关技术选型[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tU4l9lBI-1636378254005)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106170254431.png)]
Spring Cloud 体系自身的 GateWay 原理解析[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v311A8H5-1636378254006)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106170338231.png)]
Spring Cloud GateWay流程分析[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JSW066LO-1636378254007)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106170428108.png)]
T31项目技术栈[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-anJJKksU-1636378254007)(C:UsersZyfDesktopT31作业Day11 项目架构选型方案项目架构选型方案.assetsimage-20211106170634289.png)]
lBI-1636378254005)]
Spring Cloud 体系自身的 GateWay 原理解析[外链图片转存中…(img-v311A8H5-1636378254006)]
Spring Cloud GateWay流程分析[外链图片转存中…(img-JSW066LO-1636378254007)]
T31项目技术栈[外链图片转存中…(img-anJJKksU-1636378254007)]



