课程培训
云平台与微服务架构设计培训课程

云平台与微服务架构设计培训课程

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

学员基础:具有软件架构设计、尤其是互联网应用设计和开发经验

培训内容:

第一部分 云计算架构

云概览

·  为什么需要“云”

·  都有哪些云

·  云框架包括哪些内容

·  如何构建云

云计算平台与云计算关键技术

·  云计算平台架构

·  虚拟机与计算资源池:

·  分布式文件系统与存储资源池

·  网络虚拟化与网络资源池

·  并行计算与Mapreduce

·  分布式海量存储数据库

·  云技术安全

三种云服务

·  IaaS云计算服务 

· aaS服务内容:存储服务、计算服务

· IaaS案例

· IaaS解决方案

·  PaaS云计算服务 

· PaaS服务内容:开发服务、运行服务

· PaaS案例

· PaaS解决方案:Google、vmvare、hadoop等

·  SaaS云计算服务 

· SaaS服务内容

· SaaS案例

基于云平台,构建云应用

·  云计算发展现状和遇到的挑战

·  如何有效地落在云端

·  从云平台到应用的工作路线图

云平台微服务架构

微服务架构概述

什么是微服务架构
微服务架构是敏捷开发的必然结果

1.单体应用的优势与面临的挑战

o 案例:演示淘宝在系统不断发展的过程中面临的难题

o 许多系统在不断发展过程中越来越庞大带来的问题

2.康威定律与人月神话

o 烟囱式的功能团队导致烟囱式的应用

o 人员越来越多、沟通越来越困难、工作效率越来越低

3.未来快速变化的市场需要敏捷团队

o 更快地交付、更快地反馈、更快地产生价值

o 敏捷化的开发团队呼唤微服务架构

微服务是未来互联网发展的必然结果

1.互联网的发展及其面临的挑战

o 案例:分析淘宝近十年的发展及其面临的挑战

o 互联网在面临横向扩展、服务隔离等问题的局限

2.微服务能够更好地解决互联网问题

o 分析传统架构在解决互联网问题时采用的办法

o 讲解微服务架构应当是什么样子

o 剖析微服务架构在解决诸多互联网问题时的思路

微服务架构给测试与运维带来的挑战

1.微服务架构给测试带来的挑战

o 微服务架构与持续集成

o 微服务架构采用的测试工具

2.微服务架构给运维带来的调整

o 微服务架构与DevOps

o 微服务架构的管理与发布过程

准确认识微服务

关于微服务的误解
1.微服务 vs. SOA

案例:SOA在项目中的应用
案例:微服务在项目中的应用
微服务与SOA的联系与差异

2.微服务架构的本质

· 由服务组件组成的系统

· 按照业务而不是技术来组织服务

· 做全生命周期的产品而不是项目

· 智能端点与通道扁平化

· 去中心化治理

· 去中心化数据管理

· 自动化运维(DevOps)

· 故障恢复与容错

· 演化式设计

案例:演示出租车调度系统的微服务设计过程

微服务架构设计

微服务常用架构

最简版的微服务架构

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.服务发现的设计

o 使用ribbon的设计

o 使用feign的设计

5.高可靠设计与Eureka集群

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

服务网关

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

1.多渠道用户接入

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

2.微服务的负载均衡

o 负载均衡的难题:Session管理

3.路由网关(zuul)

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

o 权限验证与安全保障

o 路由网关的设计实现

4.熔断机制与服务降级

o 断路器设计模式

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

o Hystrix的断路器设计

5.流量控制与节流

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

微服务层的设计

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

1.聚合模式

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

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

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

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

2.代理模式

o 互联网横向切分与读写分离在微服务的实现

3.链式模式

o 复杂应用场景与生产流水线的设计思路

4.分支模式
5.数据共享模式
6.异步消息模式

案例:微服务实现异步化操作
微服务的粒度

1.微服务的拆分原则
2.微服务的拆分方式

微服务设计的反模式

1.太多数据迁移
2.数据共享反模式
3.频繁交互反模式

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

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.架构设计如何支持领域驱动
增删改如何支持领域驱动
查询如何支持领域驱动
3.微服务架构如何支持领域驱动
案例:一个简单、易于开发的微服务架构

如何实现前端微服务化的设计

传统架构的云平台与微服务转型

传统架构云平台与微服务转型的过程

1.技术转型
准备工作:Maven→Spring boot
整理分层:MVC层与BUS层的分离
建立微服务:注册中心、服务网关与微服务
2.业务拆分
构建领域模型与限界上下文
业务与数据库的纵向切分


初创型企业的微服务建设过程
案例:某智慧医疗系统的建设过程

1.系统的建设规划
2.系统的分析设计过程
3.微服务架构设计与对外接口
4.微服务运营平台的建设

成熟型企业开展云平台与微服务的思路

1.成熟企业开展云平台与微服务的难题
2.记录型系统 vs. 交互型系统
3.在混合云中构建交互型系统

案例:某金融企业向微服务转型的过程
大数据+微服务的转型过程
案例:某BI系统的云平台+大数据+微服务的转型过程

1.该BI系统的背景介绍
2.互联网转型带来的机遇与挑战
3.大数据的转型过程
4.微服务的转型过程
5.构建分析模型Store平台

探讨:大数据如何与微服务相结合




如果您想学习本课程,请预约报名
如果没找到合适的课程或有特殊培训需求,请订制培训
除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916
技术服务需求表点击在线申请

服务特点:
海量专家资源,精准匹配相关行业,相关项目专家,针对实际需求,顾问式咨询,互动式授课,案例教学,小班授课,实际项目演示,快捷高效,省时省力省钱。

专家力量:
中国科学院软件研究所,计算研究所高级研究人员
oracle,微软,vmware,MSC,Ansys,candence,Altium,达索等大型公司高级工程师,项目经理,技术支持专家
中科信软培训中心,资深专家或讲师
大多名牌大学,硕士以上学历,相关技术专业,理论素养丰富
多年实际项目经历,大型项目实战案例,热情,乐于技术分享
针对客户实际需求,案例教学,互动式沟通,学有所获
报名表下载
联系我们 更多>>

咨询电话010-62883247

                4007991916

咨询邮箱:soft@info-soft.cn  

 

微信号.jpg

  微信咨询

随时听讲课

聚焦技术实践

订制培训 更多>>