课程大纲:
第一天 上午
一、理解微服务架构
1.微服务架构的定义
微服务架构出现的背景
微服务架构解决的问题
微服务架构主要特征解读
微服务与SOA
微服务与中台
实施微服务架构的挑战
2.微服务整体架构
互联网架构的演进
微服务架构组成
微服务网关
微服务注册中心
微服务配置中心
微服务调用框架
微服务监控框架
第一天 下午
二、微服务架构设计
3.微服务架构设计
架构与架构风格
微服务的分层与分类
领域驱动与微服务设计
微服务粒度和拆分原则
微服务架构设计原则
微服务架构常见设计模式
如何从单体架构演进到微服务架构
4.服务设计
服务的设计原则
服务的无状态设计
服务的幂等设计
服务的容错设计
服务间通信机制选择
第二天 上午
三、微服务架构相关方案
5.微服务的安全访问方案
外部访问身份认证
服务间访问身份认证
服务访问授权
服务访问审计
OAuth 2认证方案
安全的进程间通讯
6.微服务的分布式事物方案
分布式事物相关理论
Sage事务处理模式
基于补偿的分布式事物方案
基于消息表的分布式事物方案
隔离性缺失的应对策略
LCN分布式事务组件
第二天 下午
四、微服务开发与测试
7.微服务开发
微服务项目规范与模版
微服务接口定义描述
应用层服务实现
业务层服务实现
多资源的rest接口设计
查询接口的实现:API组合与CQRS模式
微服务异常设计
微服务日志设计
日志聚合与错误定位
API的演化与版本控制
如何处理共享库
8.微服务测试
测试相关原则
微服务测试挑战
微服务测试策略
微服务单元测试
微服务接口测试
微服务集成测试
端到端测试
微服务间契约测试
9.微服务发布与部署
微服务开发与测试环境规划
发布包格式选择
代码管理策略
Docker容器介绍
将服务部署为容器
使用Kubernetes部署服务
使用jenkins构建持续发布生产线
微服务发布与滚动升级
第三天 上午
五、微服务治理
10.微服务治理
IT治理与服务治理
微服务监控内容与方式
服务负载策略与弹性伸缩
服务集群与容错
服务熔断保护
服务访问流控
服务降级
APM及调用链发展史
Google Dapper与调用链跟踪原理
调用链跟踪的整体架构
调用链跟踪实战
11.高可用微服务架构设计之性能评估&扩容篇
微服务架构之服务性能评估目的;
微服务架构之服务性能相关环节;
微服务架构之服务性能评估工具;
微服务架构之服务性能评估方法;
微服务架构之服务扩容;
实践案例。
第三天 下午
六、使用Spring Cloud实现微服务
12. 使用Spring Cloud实现微服务
SpringBoot与SpringCloud
练习案例介绍与准备
Eureka原理介绍
使用Eureka实现服务注册与发现
使用Ribbon实现客户端负载均衡
自定义负载均衡规则
Hystrix核心机制剖析
使用Hystrix实现容错和服务降级
使用Hystrix Dashboard实现可视化监控
使用Zuul实现微服务网关
Applo配置中心使用介绍
第四天 上午
七、大型互联网系统常用架构方案
13.互联网系统架构
互联网系统的特点
互联网系统架构的挑战
互联网架构演进;
14.互联网架构设计原则
无状态原则
幂等原则
异步原则
缓存原则
冗余原则
一致性原则
15.高可靠性设计
服务分级
超时设计
服务降级;
限流设计
第四天 下午
八、高性能高可用数据库方案
16.高可用高性能数据库设计
数据库架构设计基本概念;
高可用性设计与实践;
高并发设计与实践;
读性能设计与实践;
一致性设计与实践;
扩展性设计与实践;
实践案例;
九、PaaS与云
17.PaaS平台与云
云原生PaaS平台高可用高并发设计实践
云原生平台PaaS核心架构
基于Kubernetes 容器云构建
云原生平台服务的动态扩容与缩容
云原生平台服务的蓝绿发布/金丝雀发布/灰度发布
基于云原生平台的第二代微服务架构--ServiceMesh
案例分享
18.案例分享