架构师
其他
软件架构
分布式系统
微服务
分布式
推荐课程
average > 0 ? $model->average . '分' : '10.0分' ?>

系统架构全局剖析与实战

欧文

南京云悉智能科技有限公司 CEO

技术总监、资深架构师、讲师。15年+ 大型软件产品架构经验。曾为瑞穗银行(Mizuho Bank),东京证 券交易所,五十铃汽车开发企业级系统。擅长企业级系统架构,领域驱动设计,重构与模式。
为深圳证券交易所,中国电信,中国平安,招商银行信用卡中心,DELL,中兴通讯讲授技术课程。现为南 京大学,东南大学,南瑞集团特约技术讲师
现任创业AI公司研发技术总监, 负责带领团队研发计算机视觉、AI安防及大数据相关产品
授课经验(给哪些客户授课):
深圳证券交易所,中国电信,中国平安,招商银行信用卡中心,DELL,中兴通讯,
华润集团,南瑞集团,民生银行,深圳证券信息,广州农商行,中泰证券,振华重工
项目经验成功案例:
深交所运维数据平台开发 DDD 导入
招行银行信用卡中心手机App积分模块重构
南瑞集团电力继保模块重构

技术总监、资深架构师、讲师。15年+ 大型软件产品架构经验。曾为瑞穗银行(Mizuho Bank),东京证 券交易所,五十铃汽车开发企业级系统。擅长企业级系统架构,领域驱动设计,重构与模式。 为深圳证券交易所,中国电信,中国平安,招商银行信用卡中心,DELL,中兴通讯讲授技术课程。现为南 京大学,东南大学,南瑞集团特约技术讲师 现任创业AI公司研发技术总监, 负责带领团队研发计算机视觉、AI安防及大数据相关产品 授课经验(给哪些客户授课): 深圳证券交易所,中国电信,中国平安,招商银行信用卡中心,DELL,中兴通讯, 华润集团,南瑞集团,民生银行,深圳证券信息,广州农商行,中泰证券,振华重工 项目经验成功案例: 深交所运维数据平台开发 DDD 导入 招行银行信用卡中心手机App积分模块重构 南瑞集团电力继保模块重构

课程费用

6800.00 /人

课程时长

2

成为教练

课程简介

课程主要从微观和宏观两个层面讨论架构的原理与实现。
宏观架构主要从全局出发,对一个分布式/微服务系统进行层次化、模块化的剖析。并使用5视图法对架构的各个关注方面进行关注点解析。分布式系统不光分析了如何进行分布式通信,还包含如何进行数据持久化设计与事务性设计,跨网络的物理节点如何串联起来完成分布式请求。以及服务发现,流量治理,和安全性的话题。
微观架构主要基于DDD的方法论与实践,展示高质量的软件架构该设计过程。结合设计原则和模式,使架构具备演进式风格,以应对需求的变化。

目标收益

通过实战,可以让学员比单单学习架构理论留下更深刻的印象,也会在实际的工作中更有应用性和可操作性。

培训对象

各类 IT/软件企业和研发机构的架构师,软件设计师、程序员。

课程大纲

全局分析解构系统宏观架构 一、演进中的架构
1.服务架构演进史
2.原始分布式时代
3.单体系统时代
4.SOA 时代
5.微服务时代
6.后微服务时代
无服务时代
二、通信架构 – 如何访问远程服务
1.进程间通信
2.通信的成本
3.三个基本问题
4.统一的 RPC / 分裂的 RPC
5.REST 设计风格
6.理解 REST
7.RMM 成熟度
8.不足与争议
三、数据持久化与事务处理
1.实现事务原子性和持久性
2.实现隔离性
3.全局事务
4.共享事务
5.分布式事务
6.CAP 与 ACID
7.可靠事件队列
8.TCC 事务
9.SAGA 事务
10.案例:银行跨行转账业务TCC实例
四、跨网络边界的透明多级分流系统架构
1.客户端缓存:强制缓存 / 协商缓存
2.域名解析
3.传输链路
4.连接数优化
5.传输压缩
6.快速 UDP 网络连接
7.内容分发网络
8.路由解析
9.内容分发
10.CDN 应用
五、分布式系统架构中的负载均衡
1.负载均衡
2.数据链路层负载均衡
3.网络层负载均衡
4.应用层负载均衡
5.均衡策略与实现
6.案例:负载均衡解决方案在银行中起什么作用
7.服务端缓存
8.缓存属性与风险
六、架构安全性
1.认证
2.认证的标准
3.认证的实现
4.授权
5.RBAC
6.OAuth2
7.凭证
8.Cookie-Session
9.JWT
10.保密
11.保密的强度
12.客户端加密
13.密码存储和验证
14.传输
15.摘要、加密与签名
16.数字证书
17.传输安全层
18.验证
七、分布式架构中的服务发现与路由
1.服务发现
2.服务发现的意义
3.可用与可靠
4.注册中心实现
5.网关路由
6.网关的职责
7.网络 I/O 模型
8.BFF 网关
9.客户端负载均衡
10.客户端负载均衡器
11.代理负载均衡器
12.地域与区域
八、分布式架构中的流量治理
1.服务容错
2.容错策略
3.容错设计模式
4.流量控制
5.流量统计指标
6.限流设计模式
7.分布式限流
基于领域驱动设计的微观架构原理与实现 九、领域驱动设计架构总述
1.分层架构在领域驱动下的演进
2.界限上下文与架构
3.六边形架构 / 端口与适配器 / 整洁架构
4.CQRS架构
5.在CQRS中处理具有最终一致性的查询模型
6.事件溯源 Event Souring
7.事件溯源和发布事件
8.幂等方式处理消息
9.使用快照提升性能
10.管道与过滤器
11.SAGA (消息驱动事务)
12.协同式与编排式
13.SAGA下实现隔离
十、领域层架构: 实体 & 值对象 & 聚合
1.唯一标识 / 委派标识
2.案例:实现实体层超类型(Layer Supertype)
3.实战 - 任务分配执行系统 实体行为归属甄别
4.值对象的特征
5.为什么值对象这么容易被忽略
6.案例:地址建模与值对象
7.案例:实现值对象层超类型
8.聚合设计原则
9.聚合设计的过程
10.聚合的一致性边界
11.一个事务中只处理一个聚合
12.聚合内实现事务一致性 / 聚合外实现最终一致性
13.案例:更新订单状态与库存扣减
14.聚合设计的注意点
十一、应用服务层架构
1.用例 (Use Case) 与应用服务
2.微服务的网关 与 应用服务 之间的关系
3.应用服务中的 编排,转换,验证,转发
4.工作单元 (Unit of Work)
5.数据传输对象 (Data Transfer Object)
6.事务脚本 (Transaction Script) 与领域模型
7.依赖注入在应用服务中的使用
8.案例:实现应用服务
9.应用服务的关注点
10.实战 - 任务分配执行系统 应用层构建
十二、领域服务层架构
1.领域服务的幂等性
2.案例:实现领域服务
3.实战 - 任务分配执行系统 领域服务层构建
十三、资源库层架构
1.集合特性
2.资源库与数据访问层的区别
3.资源库的误解
4.资源库的实现要点
5.案例:资源库的实现
6.领域模型 VS 数据模型
7.案例:泛型资源库
8.实战:实战 - 任务分配执行系统 持久化
十四、事件驱动架构
1.领域事件是领域建模中极其重要的部分
2.事务一致性,高并发下的窘境
3.最终一致性,妥协带来高扩展性
4.原则:一个事务中只对一个聚合进行修改
5.案例:实现抽象事件源,发布事件源
6.微服务之间如何稳健的发布与消费事件
7.如何保证发布事件的原子性
8.使用事件表发布事件
9.案例:如何实现事件感知聚合根
10.案例:如何实现事件感知资源库
11.如何通过 AOP 进行通用的事件处理
十五、CQRS架构
1.基于数据模型的读操作
2.基于领域模型的读操作
3.读写分离模型
4.案例:电商系统中的读写分离场景
5.单进程单实体 + 共享存储/共享模型:Inventory详情查询
6.单进程单实体 + 共享存储/分离模型:Product摘要查询
7.单进程跨实体 + 分离存储/分离模型:Product详情查询(包含Category信息)
8.跨进程跨实体 + 分离存储/分离模型:Order详情查询(包含Product信息)
十六、使用AI进行结对编程
1.LLM在开发中的应用
2.如何向LLM描述需求
3.测试先行与LLM生成测试场景
4.演习:使用LLM生成单元测试与代码框架
5.LLM与代码优化
6.指导LLM生成业务代码
7.执行单元测试并修正代码
8.演习:使用LLM创建命令行分析器的代码实现
全局分析解构系统宏观架构
一、演进中的架构
1.服务架构演进史
2.原始分布式时代
3.单体系统时代
4.SOA 时代
5.微服务时代
6.后微服务时代
无服务时代
二、通信架构 – 如何访问远程服务
1.进程间通信
2.通信的成本
3.三个基本问题
4.统一的 RPC / 分裂的 RPC
5.REST 设计风格
6.理解 REST
7.RMM 成熟度
8.不足与争议
三、数据持久化与事务处理
1.实现事务原子性和持久性
2.实现隔离性
3.全局事务
4.共享事务
5.分布式事务
6.CAP 与 ACID
7.可靠事件队列
8.TCC 事务
9.SAGA 事务
10.案例:银行跨行转账业务TCC实例
四、跨网络边界的透明多级分流系统架构
1.客户端缓存:强制缓存 / 协商缓存
2.域名解析
3.传输链路
4.连接数优化
5.传输压缩
6.快速 UDP 网络连接
7.内容分发网络
8.路由解析
9.内容分发
10.CDN 应用
五、分布式系统架构中的负载均衡
1.负载均衡
2.数据链路层负载均衡
3.网络层负载均衡
4.应用层负载均衡
5.均衡策略与实现
6.案例:负载均衡解决方案在银行中起什么作用
7.服务端缓存
8.缓存属性与风险
六、架构安全性
1.认证
2.认证的标准
3.认证的实现
4.授权
5.RBAC
6.OAuth2
7.凭证
8.Cookie-Session
9.JWT
10.保密
11.保密的强度
12.客户端加密
13.密码存储和验证
14.传输
15.摘要、加密与签名
16.数字证书
17.传输安全层
18.验证
七、分布式架构中的服务发现与路由
1.服务发现
2.服务发现的意义
3.可用与可靠
4.注册中心实现
5.网关路由
6.网关的职责
7.网络 I/O 模型
8.BFF 网关
9.客户端负载均衡
10.客户端负载均衡器
11.代理负载均衡器
12.地域与区域
八、分布式架构中的流量治理
1.服务容错
2.容错策略
3.容错设计模式
4.流量控制
5.流量统计指标
6.限流设计模式
7.分布式限流
基于领域驱动设计的微观架构原理与实现
九、领域驱动设计架构总述
1.分层架构在领域驱动下的演进
2.界限上下文与架构
3.六边形架构 / 端口与适配器 / 整洁架构
4.CQRS架构
5.在CQRS中处理具有最终一致性的查询模型
6.事件溯源 Event Souring
7.事件溯源和发布事件
8.幂等方式处理消息
9.使用快照提升性能
10.管道与过滤器
11.SAGA (消息驱动事务)
12.协同式与编排式
13.SAGA下实现隔离
十、领域层架构: 实体 & 值对象 & 聚合
1.唯一标识 / 委派标识
2.案例:实现实体层超类型(Layer Supertype)
3.实战 - 任务分配执行系统 实体行为归属甄别
4.值对象的特征
5.为什么值对象这么容易被忽略
6.案例:地址建模与值对象
7.案例:实现值对象层超类型
8.聚合设计原则
9.聚合设计的过程
10.聚合的一致性边界
11.一个事务中只处理一个聚合
12.聚合内实现事务一致性 / 聚合外实现最终一致性
13.案例:更新订单状态与库存扣减
14.聚合设计的注意点
十一、应用服务层架构
1.用例 (Use Case) 与应用服务
2.微服务的网关 与 应用服务 之间的关系
3.应用服务中的 编排,转换,验证,转发
4.工作单元 (Unit of Work)
5.数据传输对象 (Data Transfer Object)
6.事务脚本 (Transaction Script) 与领域模型
7.依赖注入在应用服务中的使用
8.案例:实现应用服务
9.应用服务的关注点
10.实战 - 任务分配执行系统 应用层构建
十二、领域服务层架构
1.领域服务的幂等性
2.案例:实现领域服务
3.实战 - 任务分配执行系统 领域服务层构建
十三、资源库层架构
1.集合特性
2.资源库与数据访问层的区别
3.资源库的误解
4.资源库的实现要点
5.案例:资源库的实现
6.领域模型 VS 数据模型
7.案例:泛型资源库
8.实战:实战 - 任务分配执行系统 持久化
十四、事件驱动架构
1.领域事件是领域建模中极其重要的部分
2.事务一致性,高并发下的窘境
3.最终一致性,妥协带来高扩展性
4.原则:一个事务中只对一个聚合进行修改
5.案例:实现抽象事件源,发布事件源
6.微服务之间如何稳健的发布与消费事件
7.如何保证发布事件的原子性
8.使用事件表发布事件
9.案例:如何实现事件感知聚合根
10.案例:如何实现事件感知资源库
11.如何通过 AOP 进行通用的事件处理
十五、CQRS架构
1.基于数据模型的读操作
2.基于领域模型的读操作
3.读写分离模型
4.案例:电商系统中的读写分离场景
5.单进程单实体 + 共享存储/共享模型:Inventory详情查询
6.单进程单实体 + 共享存储/分离模型:Product摘要查询
7.单进程跨实体 + 分离存储/分离模型:Product详情查询(包含Category信息)
8.跨进程跨实体 + 分离存储/分离模型:Order详情查询(包含Product信息)
十六、使用AI进行结对编程
1.LLM在开发中的应用
2.如何向LLM描述需求
3.测试先行与LLM生成测试场景
4.演习:使用LLM生成单元测试与代码框架
5.LLM与代码优化
6.指导LLM生成业务代码
7.执行单元测试并修正代码
8.演习:使用LLM创建命令行分析器的代码实现

课程费用

6800.00 /人

课程时长

2

预约体验票 我要分享

近期公开课推荐

近期公开课推荐

活动详情

提交需求