曙海教学优势
本课程面向企事业项目实际需要,秉承二十一年积累的教学品质,微服务+领域驱动实战训练营培训课程以项目实现为导向,老师将会与您分享设计的全流程以及工具的综合使用技巧、经验。线上/线下/上门皆可,微服务+领域驱动实战训练营培训课程专家,课程可定制,热线:4008699035。
大批企业和曙海
建立了良好的合作关系,合作企业30万+。曙海的课程培养了大批受企业欢迎的工程师。曙海的课程在业内有着响亮的知名度。
第一部分 基础知识 | |
第一单元 微服务架构概述 | 什么是微服务架构 微服务架构是敏捷开发的必然结果 1. 单体应用的优势与面临的挑战 案例:演示淘宝在系统不断发展的过程中面临的难题 许多系统在不断发展过程中越来越庞大带来的问题 2. 康威定律与人月神话 烟囱式的功能团队导致烟囱式的应用 人员越来越多、沟通越来越困难、工作效率越来越低 3. 未来快速变化的市场需要敏捷团队 更快地交付、更快地反馈、更快地产生价值 敏捷化的开发团队呼唤微服务架构 微服务是未来互联网发展的必然结果 1. 互联网的发展及其面临的挑战 案例:分析淘宝近十年的发展及其面临的挑战 互联网在面临横向扩展、服务隔离等问题的局限 2. 微服务能够更好地解决互联网问题 分析传统架构在解决互联网问题时采用的办法 讲解微服务架构应当是什么样子 剖析微服务架构在解决诸多互联网问题时的思路 微服务架构给测试与运维带来的挑战 1. 微服务架构给测试带来的挑战 微服务架构与持续集成 微服务架构采用的测试工具 2. 微服务架构给运维带来的调整 微服务架构与DevOps 微服务架构的管理与发布过程 |
第二单元 准确认识微服务 | 关于微服务的误解 1. 微服务 vs. SOA 案例:SOA在项目中的应用 案例:微服务在项目中的应用 微服务与SOA的联系与差异 2. 微服务架构的本质
|
第二部分 微服务架构设计 | |
第三单元 微服务常用架构 | 最简版的微服务架构 1. 服务注册与发现 2. 服务网关 3. 微服务 4. 配置管理 微服务常用的技术框架 1. Spring Cloud简介 2. Spring Boot简介
|
第四单元 服务注册与发现 | 服务注册与发现的概念与作用 实现服务注册与发现的方案 1. Dubbo的简介 2. Zookeeper的简介 3. Netflix Eureka的简介 Spring Cloud Eureka方案 1. Spring Cloud Eureka的系统架构 2. Eureka Server的设计 3. Eureka Client的设计 4. 服务发现的设计
|
第五单元 微服务层的设计 | 微服务架构的6种设计模式 1. 聚合模式 互联网纵向切分在微服务的实现 纵向切分应当注意的设计问题 避免跨库关联查询的设计 采用分布式事务解决跨库的事务操作 2. 代理模式 互联网横向切分与读写分离在微服务的实现 3. 链式模式 复杂应用场景与生产流水线的设计思路 4. 分支模式 5. 数据共享模式 6. 异步消息模式 案例:微服务实现异步化操作 微服务的粒度 1. 微服务的拆分原则 2. 微服务的拆分方式 微服务设计的反模式 1. 太多数据迁移 2. 数据共享反模式 3. 频繁交互反模式 探讨:如何解决微服务接口太多的问题 |
第六单元 服务网关 | 服务网关在微服务架构中的作用 1. 多渠道用户接入 微服务前后端分离的架构设计 2. 微服务的负载均衡 负载均衡的难题:Session管理 3. 路由网关(zuul) 蓝绿发布、滚动发布、灰度发布与金丝雀发布 权限验证与安全保障 路由网关的设计实现 4. 流量控制与节流 练习:设计服务网关、路由网关与断路器 |
第七单元 Docker与容器技术 | Docker简介 1. Docker vs. 虚拟化 2. Docker的运行方式 3. Docker的基本操作 将微服务部署到Docker中 演练:微服务在Docker中的部署过程 练习:模拟构建一个微服务系统
|
第八单元 配置管理与DevOps | DevOps简介 1. 微服务为什么需要DevOps 2. 微服务的测试过程 3. 微服务的发布过程 微服务配置中心 1. Spring Cloud Config的配置过程 2. Spring Cloud Config的发布过程 微服务的分布式运维 1. Kubernetes简介 2. 用Kubernetes进行分布式运维 探讨:如何构建一个微服务运营平台 |
第三部分 微服务的系统设计 | |
第九单元 领域驱动设计 | 所有软件企业不得不面对的问题 1. 我们现在面对的是快速变化的时代 2. 软件研发却出现了问题: 变更越频繁,代码质量下降越快 案例:演示电商网站付款功能代码质量下降的过程 3. 揭示软件退化的根源 案例:演示软件退化的过程与高质量设计的过程 深度解读高内聚与单一职责原则 领域驱动设计 1. 软件变更过程中的设计难题 2. 领域驱动的设计思想 案例:重新演练电商网站付款功能的变更过程 第一个版本的领域模型与设计
|
第十单元 传统架构的微服务转型 | 传统架构微服务转型的过程 1. 技术转型 准备工作:Maven→Spring boot 整理分层:MVC层与BUS层的分离 建立微服务:注册中心、服务网关与微服务 2. 业务拆分 构建领域模型与限界上下文 业务与数据库的纵向切分 练习:将一个传统架构的软件改造成微服务 初创型企业的微服务建设过程 案例:某智慧医疗系统的建设过程 1. 系统的建设规划 2. 系统的分析设计过程 3. 微服务架构设计与对外接口 4. 微服务运营平台的建设 成熟型企业开展微服务的思路 1. 成熟企业开展微服务的难题 2. 记录型系统 vs. 交互型系统 3. 在混合云中构建交互型系统 案例:某金融企业向微服务转型的过程 大数据+微服务的转型过程 案例:某风控系统的大数据+微服务的转型过程 1. 该风控系统的背景介绍 2. 互联网转型带来的机遇与挑战 3. 后端大数据的转型过程 4. 前端微服务的转型过程 5. 构建风险分析模型的AppStore平台 探讨:大数据如何与微服务相结合 |