4006-998-758
3000+课程任你选择
分布式系统架构原理及案例实践v1
研发学院 分布式系统架构原理及案例实践 开课时间:2023-09-07
戴昊

现任创业AI公司研发技术总监负责带领团队研发计算机视觉、AI安防及大数据相关产品。15年+ 大型软件产品架构经验。曾为日本第一,世界第二的瑞穗银行(Mizuho Bank);世界第二大证券交易所 – 东京证券,五十铃汽车开发企业级系统。曾给深圳证券交易所,深圳证券,招商银行信用卡中心,平安金融,中国电信,DELL 讲授过企业级架构及重构与模式的课程。擅长企业级系统架构,领域驱动设计,重构与模式。


查看老师详情
课程内容

课程对象

具有以下经验的 架构师,后端开发工程师,以及其他软件从业人员

具有基础的架构设计知识

可以熟练掌握的面向对象程序设计能力

具有三年或以上的业务系统开发经验


课程大纲


Day1


一、 软件复杂度

  1. 软件复杂度的三个成因

  2. 分离关注点 – Unix设计哲学

  3. 隔离业务复杂度与技术复杂度

  4. 复杂度的横切与纵切


二、           演进中的架构

  1. 服务架构演进史

  2. 原始分布式时代

  3. 单体系统时代

  4. SOA 时代

  5. 微服务时代

  6. 后微服务时代

  7. 无服务时代


三、           分布式系统构建块:远程服务调用

  1. 远程服务调用

  2. 进程间通信

  3. 通信的成本

  4. 三个基本问题

  5. 统一的 RPC

  6. 分裂的 RPC

  7. REST 设计风格

  8. 理解 REST

  9. RESTful 的系统

  10. RMM 成熟度

  11. 不足与争议


四、           分布式系统构建块:事务处理

  1. 本地事务

  2. 实现原子性和持久性

  3. 实现隔离性

  4. 全局事务

  5. 共享事务

  6. 分布式事务

  7. CAP 与 ACID

  8. 可靠事件队列

  9. TCC 事务

  10. SAGA 事务


五、           分布式系统构建块:透明多级分流系统

  1. 客户端缓存

  2. 强制缓存

  3. 协商缓存

  4. 域名解析

  5. 传输链路

  6. 连接数优化

  7. 传输压缩

  8. 快速 UDP 网络连接

  9. CDN

  10. 路由解析

  11. 内容分发

  12. CDN 应用

  13. 负载均衡

  14. 数据链路层负载均衡

  15. 网络层负载均衡

  16. 应用层负载均衡

  17. 均衡策略与实现

  18. 服务端缓存

  19. 缓存属性

  20. 缓存风险


六、           分布式系统构建块:安全性

  1. 认证

  2. 认证的标准

  3. 认证的实现

  4. 授权

  5. RBAC

  6. OAuth2

  7. 凭证

  8. Cookie-Session

  9. JWT

  10. 保密

  11. 保密的强度

  12. 客户端加密

  13. 密码存储和验证

  14. 传输

  15. 摘要、加密与签名

  16. 数字证书

  17. 传输安全层

  18. 验证

Day2


七、           分布式系统构建块:服务的注册与发现

  1. 服务发现

  2. 服务发现的意义

  3. 可用与可靠

  4. 注册中心实现

  5. 网关路由

  6. 网关的职责

  7. 网络 I/O 模型

  8. BFF 网关

  9. 客户端负载均衡

  10. 客户端负载均衡器

  11. 代理负载均衡器

  12. 地域与区域


八、           分布式系统构建块:流量治理

  1. 服务容错

  2. 容错策略

  3. 容错设计模式

  4. 案例:微服务架构的故障隔离及容错处理机制

  5. 流量控制

  6. 流量统计指标

  7. 限流设计模式

  8. 分布式限流


九、           分布式系统构建块:可靠通讯

  1. 零信任网络

  2. 零信任安全模型的特征

  3. Google 的实践探索

  4. 服务安全

  5. 建立信任

  6. 认证

  7. 授权


十、           分布式系统构建块:可观测性

  1. 事件日志

  2. 输出

  3. 收集与缓冲

  4. 加工与聚合

  5. 存储与查询

  6. 链路追踪

  7. 追踪与跨度

  8. 数据收集

  9. 追踪规范化

  10. 聚合度量

  11. 指标收集

  12. 存储查询

  13. 监控预警

  14. 案例:某银行统一日志平台介绍


十一、      分布式系统构建块:虚拟化容器

  1. 容器的崛起

  2. 隔离文件:chroot

  3. 隔离访问:namespaces

  4. 隔离资源:cgroups

  5. 封装系统:LXC

  6. 封装应用:Docker

  7. 封装集群:Kubernetes

  8. 以容器构建系统

  9. 隔离与协作

  10. 韧性与弹性

  11. 以应用为中心的封装





返回上一级