课程大纲:
高级微服务架构设计公开课
一、培训收益
系统全面地了解和学习微服务架构的设计、云计算与大数据基础平台及原生云应用开发方法等。通过此次课程培训,可使学习者获得如下收益:
1) 理解微服务架构:
2) 掌握微服务设计;
3) 熟悉掌握微服务开发与测试;
4) 掌握微服务治理;
5) 学会使用SpringCloud实现微服务;
二、培训特色
1.理论与实践相结合、案例分析与行业应用穿插进行;
2.专家精彩内容解析、学员专题讨论、分组研究;
3.通过全面知识理解、专题技能演示和实践引导学员掌握课程内容。
三、日程安排
第一天上午
理解微服务架构
1.微服务架构的定义
-微服务架构的概念
-单体应用演进中的挑战
-微服务架构解决的问题
-微服务架构主要特征解读
-微服务与SOA和中台
-实施微服务架构的挑战
-实施微服务——你的问题是什么?
2.微服务整体架构
-互联网架构的演进
-微服务架构组成
-微服务网关
-微服务注册中心
-微服务配置中心
-微服务调用框架
-微服务监控
-业界微服务架构实践
第一天 下午
微服务设计
3.微服务架构设计
-什么是架构与架构风格?
-分层架构风格
-六边形架构风格
-微服务架构风格
-服务间的松耦合
-微服务的分层与分类
-领域驱动与微服务设计
-微服务架构设计原则
-微服务架构常见设计模式
-微服务粒度设计
4.微服务服务层设计
-服务的构成要素
-微服务设计原则
-服务的无状态设计
-服务的幂等设计
-服务的容错设计
-服务事件设计
-服务间通信机制选择
第二天 上午
微服务开发与测试
5.微服务开发
-微服务项目规范与模版
-微服务接口定义描述
-应用层服务实现
-业务层服务实现
-多资源的rest接口设计
-查询接口的实现:API组合与CQRS模式
-微服务异常设计
-微服务日志设计
-日志聚合与错误定位
-API的演化与版本控制
-如何处理共享库
6.微服务分布式事物方案
-分布式事物相关理论
-Sage事务处理模式
-基于补偿的分布式事物方案
-基于消息表的分布式事物方案
-隔离性缺失的应对策略
-LCN分布式事务组件
7.微服务的安全访问
-外部访问身份认证
-服务间访问身份认证
-服务访问授权
-服务访问审计 OAuth 2认证方案
-安全的进程间通讯
第二天 下午
8.从单体应用向微服务架构迁移
-迁移需要考虑的问题
-迁移的若干策略
-绞杀者模式
-修缮者模式
-数据库的拆分策略与步骤
-服务与单体的协作方式
9.微服务测试
-测试相关原则
-微服务测试挑战
-微服务测试策略
-微服务单元测试
-微服务接口测试
-微服务集成测试
-端到端测试
-微服务间契约测试
10.微服务发布与部署
-微服务开发与测试环境规划
-发布包格式选择
-代码管理策略
-Docker容器介绍
-将服务部署为容器
-使用Kubernetes部署服务
-使用jenkins构建持续发布生产线
-微服务发布与滚动升级
第三天 上午
微服务治理
11.微服务治理
-IT治理与服务治理
-微服务监控内容与方式
-服务负载策略与弹性伸缩
-服务集群与容错
-服务熔断保护
-服务访问流控
-服务降级
-APM及调用链发展史
-Google Dapper与调用链跟踪原理
-调用链跟踪的整体架构
-调用链跟踪实战
第三天 下午
使用SpringCloud实现微服务
12.SpringCloud相关组件与练习
-SpringBoot与SpringCloud
-练习案例介绍与准备
-Eureka原理介绍
-使用Eureka实现服务注册与发现
-使用Ribbon实现客户端负载均衡
-自定义负载均衡规则
-Hystrix核心机制剖析
-使用Hystrix实现容错和服务降级
-使用Hystrix Dashboard实现可视化监控
-使用Zuul实现微服务网关 Applo配置中心使用介绍
-案例分享
13.微服务案例分享
高级微服务架构设计公开课