4006-998-758
3000+课程任你选择
微服务架构设计实战训练营
研发学院 服务注册 微服务开发实战演练 微服务常用架构
范钢

从事软件研发工作近二十年,并且现在一直坚守在大型软件架构设计一线工作。从需求分析、软件开发到项目管理、架构设计都有丰富的从业经验,尤其熟悉互联网架构与分析的特点。先后主持或参与了数十个国内外大型软件项目,涉及领域包括互联网、金融、军工、财务、税务等领域。先后为京东、淘宝网、支付宝等电商网站设计电子发票开票平台,为全国各地各行各业的纳税人设计增值税发票在线开票系统,为各级税务机关提供税务大数据风险监控平台。此外,还是大型遗留系统改造专业户,多次参与大型遗留系统改造、软件系统重构等重大项目,长期关注大型业务系统的品质保证、防止腐化以及技术改造等困扰软件企业的问题,进而提出了许多实用而有效的解决方案,在遗留系统优化与改造方面有丰富的经验。


查看老师详情
课程内容


授课内容

第一单元 微服务常用架构

基于SpringCloud的微服务技术框架

1. Spring Cloud简介

2. Spring Boot简介

最简版的微服务架构

1. 服务注册与发现Spring Cloud Eureka

2. 服务网关Spring Cloud Zuul

3. 微服务及其相互调用Spring Cloud Ribbon/Feign

4. 配置管理 Spring Cloud Config 

第二单元 服务注册与发现

服务注册与发现的概念与作用

实现服务注册与发现的方案

1. Dubbo的简介

2. Zookeeper的简介

3. ETCD的简介

4. Netflix Eureka的简介

Spring Cloud Eureka方案

1. Spring Cloud Eureka的系统架构

2. Eureka Server的设计

3. Eureka Client的设计

4. 服务发现的设计

Ø 使用ribbon的设计

Ø 使用feign的设计

5. 熔断机制

Ø 断路器设计模式

Ø 线程池隔离、优雅降级与熔断

Ø Hystrix的断路器设计

练习:使用Eureka构建微服务系统

1. Eureka Server

2. Eureka Client

3. 使用ribbon/feign进行微服务间调用

4. 设计熔断器

第四单元 微服务层的设计

微服务架构的6种设计模式

1. 聚合模式

案例:电商网站购物功能的设计

Ø 微服务前后端分离的设计

Ø 分布式事务的两阶段提交

Ø TCC方案与阿里GTS

Ø 采用分布式事务解决跨库的事务操作

案例:电商网站下单服务的设计

单一职责原则与领域驱动设计

Ø 互联网纵向切分在微服务的实现

Ø 纵向切分应当注意的设计问题

Ø 避免跨库关联查询的设计

2. 代理模式

案例:电商网站支付功能的设计思路

案例:电商网站多渠道支付的微服务实现

3. 链式模式

4. 分支模式

5. 数据共享模式

6. 异步消息模式

案例:12306的异步化操作

案例:电商网站异步化操作的微服务实现

微服务的粒度

1. 微服务的拆分原则

2. 微服务的拆分方式

微服务设计的反模式

1. 太多数据迁移

2. 数据共享反模式

3. 频繁交互反模式

探讨:如何解决微服务接口太多的问题

第五单元 服务网关

服务网关在微服务架构中的作用

1. 多渠道用户接入

微服务前后端分离的架构设计

2. 微服务的负载均衡

负载均衡的难题:Session管理

3. 路由网关(zuul)

蓝绿发布、滚动发布、灰度发布与金丝雀发布

权限验证与安全保障

智能路由与服务迁移

过滤器的设计与配置

4. 流量控制与节流

练习:设计服务网关、路由网关与断路器

第六单元 微服务开发实战演练

用实际项目演练微服务开发的整个过程

1. 演练:从单体应用到微服务的设计转型过程

2. 微服务开发的组织形式:父项目与基础平台

3. 微服务开发的组织形式:多环境配置

4. 前端、聚合层、原子服务层的微服务设计

5. 服务网关的设计:用户权鉴与智能路由

演练在真实项目中微服务的性能测试

1. 断路器监控Turbine及其应用实践

2. 链路跟踪Zipkin与微服务路由优化的应用实践

3. 金丝雀测试与全链路压测应用实践


课程对象

中高级工程师、企业架构师、软件设计师、技术决策/解决方案人员等。


课程特色

本课程注重实战,并以工作坊的形式提供很多案例,让学员通过练习掌握微服务架构设计的过程,以及从传统架构向微服务改造的过程。同时,通过大量真实的案例,讲解许多公司在开展微服务转型过程中面临的难题、解决的思路,以及最终的设计。


返回上一级