《沈剑架构师训练营》第8章 - 架构分层
40、分层:互联网分层架构方法论
- no40:互联网分层架构的的本质是什么?
- 这是一个「数据移动」,然后「被处理」,被「呈现」的过程
- no40:数据移动过程中最重要的两点是什么?
- 1.数据传输的格式
- 2.数据在各个层次的形态
- no40:架构分层的方法论是什么?
- 1.让上游更高效地获取与处理数据,复用
- 2.让下游能屏蔽数据的获取细节,封装
41、分层:DAO与服务化。
- no41:何时应该引入 DAO
- 为了屏蔽数据库数据细节时
- no41:何时需要基础数据服务化分层
- 为了屏蔽垂直拆分,分库分表,缓存细节时
42、分层:业务服务层,是否有必要?
- no42:何时需引入业务服务层
- 为了屏蔽多个基础服务的调用时
43、分层:前后端分离
- no43:什么时候需要前后端分离?
- 为了屏蔽端上多变,PC/H5/APP 等产品复杂性时,因为设备兼容性,折磨着 MVC 的工程师,PC/H5/APP 等前端展现变化的频率,远大于后端业务逻辑变化的频率
44、分层:数据库中间件
- no44:何时需要数据库中间件?
- 为了屏蔽数据库层面的复杂性时,如
- 有些数据需要路由到特定的水平切分库
- 有些数据不确定落在哪一个水平切分库,就需要访问所有库
- 有些数据需要访问全局的库,拿到数据的全局视野,到service层进行额外处理
- 引入数据库中间件,基于客户端
- 基于服务端,对上游而言,它就是数据库
- 为了屏蔽数据库层面的复杂性时,如
《沈剑架构师训练营》第8章 - 架构分层相关推荐
- .NET 云原生架构师训练营(设计原则设计模式)--学习笔记
▲ 点击上方"DotNet NB"关注公众号 回复"1"获取开发者路线图 学习分享 丨作者 / 郑 子 铭 这是DotNet NB 公众号的第180篇原创文章 ...
- .NET 云原生架构师训练营(系统架构)--学习笔记
▲ 点击上方"DotNet NB"关注公众号 回复"1"获取开发者路线图 学习分享 丨作者 / 郑 子 铭 这是DotNet NB 公众号的第176篇原创文章 ...
- .NET 云原生架构师训练营(模块二 基础巩固 安全)--学习笔记
2.8 安全 认证 VS 授权 ASP .NET Core 认证授权中间件 认证 JWT 认证 授权 认证 VS 授权 认证是一个识别用户是谁的过程 授权是一个决定用户可以干什么的过程 401 Una ...
- .NET 云原生架构师训练营(模块二 基础巩固 REST RESTful)--学习笔记
2.3.1 Web API -- REST && RESTful 什么是 REST,什么是 RESTful RESTful API 设计 RESTful 成熟度模型 什么是 REST, ...
- .NET 云原生架构师训练营(模块二 基础巩固 配置)--学习笔记
2.2.3 核心模块--配置 IConfiguration Options ASP.NET Core 中的配置:https://docs.microsoft.com/zh-cn/aspnet/core ...
- .NET 云原生架构师训练营(模块二 基础巩固 日志)--学习笔记
2.2.2 核心模块--日志 ILogger 的使用 日志的 ID 日志的分类 日志的级别 LoggerProvider 日志的最佳实践 .NET Core 和 ASP.NET Core 中的日志记录 ...
- .NET 云原生架构师训练营(模块二 基础巩固 依赖注入)--学习笔记
2.2.1 核心模块--依赖注入 什么是依赖注入 .NET Core DI 生命周期 服务设计 服务范围检查 ASP.NET Core 依赖注入:https://docs.microsoft.com/ ...
- .NET 云原生架构师训练营(模块二 基础巩固 引入)--学习笔记
2.1 引入 http协议 web server && web application framework .net 与 .net core asp .net core web api ...
- 高级架构师_Redis_第3章_Redis持久化
高级架构师_Redis_第3章_Redis持久化 文章目录 高级架构师_Redis_第3章_Redis持久化 Redis 持久化 1.1 为什么要持久化 1.2 RDB 介绍 1.3 RDB 执行流程 ...
- 高级架构师_Redis_第1章_缓存原理与设计
高级架构师_Redis_第1章_ 缓存原理与设计 文章目录 高级架构师_Redis_第1章_ 缓存原理与设计 第一节 缓存原理与设计 1.1 缓存基本思想 1.11 缓存的使用场景 1.12 什么是缓 ...
最新文章
- 沈向洋:浅谈人工智能创造
- C语言学习趣事_之_大数运算_加法
- swift_040(Swift闭包声明与用途)
- 有不含有重复数字的数组构造二叉树_Leetcode刷题记录:构建最大数二叉树
- rhel6.2 yum
- 信息提醒之Notification,兼容全部SDK-更新中
- 单元测试代码:SpringTest+JUnit
- python输入4个数字_输入4个整数,要求按从小到大的顺序输出python
- 斯坦福大学CS143编译原理课程笔记:4. Cool语言概述
- SVN增加文件后,文件无法自动包括在项目中的原因
- next.js页面跳转
- 小议Linux安全防护(一)
- 苹果笔记本电脑我的计算机在哪里设置密码,Mac小教程:设置苹果Mac电脑的开机密码...
- flutter中Image.network()网络图片加载失败使用默认图片显示
- syslog协议发送本机日志到其他设备/服务器(winlinux)
- aistudio解压zip
- 卡尔曼滤波matlab程序实现
- 解决vue中img或元素背景图片无法显示或路径错误问题
- 遥感图像处理基本操作——遥感图像辐射定标和大气校正(ENVI)
- 题解报告(CDUT暑期集训——第五场)