课程培训
云计算、微服务与分布式架构培训课程

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

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

培训内容:

课程将结合大型互联网架构讲解云计算与分布式架构的构建范例:淘宝电商网站、京东订单系统、12306.cn订票系统、国家金税系统。
云计算与分布式架构概览 云计算与分布式架构的引入
1.什么是系统云计算与分布式
2.如何通过架构保证云计算与分布式
3.云计算与分布式架构都要考虑什么
4.云计算与分布式架构的质量评价指标有哪些
5.云计算与分布式设计都设计那些环节
6.从一个大型互联网系统架构看云计算与分布式的解决方法
大型互联网架构案例解析 大型互联网架构演化过程:从单点到分布式,云计算与分布式
大型互联网架构案例解析:
  • 12306架构改造过程
  • 案例:淘宝网的架构演进过程
  • 京东订单系统的优化过程
大型互联网架构的关注点:
  • 用户体验
  • 云计算与分布式
  • 高性能
  • 易于扩展
云计算与分布式架构的特点及解决思路 高并发
1.高并发的概念
2.高并发问题的解决思路:目标→问题→方案
3.横向扩展与纵向扩展
大数据
1.大数据的概念
2.大数据问题的解决思路
    1)针对三种不同操作类型的优化
    2)并行操作与异步处理
    3)集中式处理 vs. 分布式处理
高可靠性
1.高可靠性在三个层面的概念
2高可靠性的设计思路
    1)单点故障可容忍
    2)灾备与恢复

     

一、微服务架构
微服务架构概述 什么是微服务架构
微服务架构是敏捷开发的必然结果
1.单体应用的优势与面临的挑战
    案例:演示淘宝在系统不断发展的过程中面临的难题
    许多系统在不断发展过程中越来越庞大带来的问题
2.康威定律与人月神话
    烟囱式的功能团队导致烟囱式的应用
    人员越来越多、沟通越来越困难、工作效率越来越低
3.未来快速变化的市场需要敏捷团队
    更快地交付、更快地反馈、更快地产生价值
    敏捷化的开发团队呼唤微服务架构
微服务是未来互联网发展的必然结果
1.互联网的发展及其面临的挑战
    案例:分析淘宝近十年的发展及其面临的挑战
    互联网在面临横向扩展、服务隔离等问题的局限
2.微服务能够更好地解决互联网问题
    分析传统架构在解决互联网问题时采用的办法
    讲解微服务架构应当是什么样子
    剖析微服务架构在解决诸多互联网问题时的思路
微服务架构给测试与运维带来的挑战
1.微服务架构给测试带来的挑战
    微服务架构与持续集成
    微服务架构采用的测试工具
2.微服务架构给运维带来的调整
    微服务架构与DevOps
    微服务架构的管理与发布过程
准确认识微服务 关于微服务的误解
1.微服务 vs. SOA
    案例:SOA在项目中的应用
    案例:微服务在项目中的应用
    微服务与SOA的联系与差异
2.微服务架构的本质
  • 由服务组件组成的系统
  • 按照业务而不是技术来组织服务
  • 做全生命周期的产品而不是项目
  • 智能端点与通道扁平化
  • 去中心化治理
  • 去中心化数据管理
  • 自动化运维(DevOps)
  • 故障恢复与容错
  • 演化式设计
案例:演示出租车调度系统的微服务设计过程
微服务常用架构 微服务案例解析:
  • 淘宝的微服务架构框架
  • 京东的微服务架构框架
  • 金税系统的微服务架构框架 Spring Cloud微服务框架解析
    1.服务注册与发现Spring Cloud Eureka
    2.服务网关Spring Cloud Zuul
    3.微服务及其相互调用Spring Cloud Ribbon/Feign
    4.配置管理 Spring Cloud Config
    微服务的平台建设:
    1.微服务的平台应具备的要素
    2.配置中心Spring Cloud Config
    3.断路监控Spring Cloud Turbine
    4.信息采集Spring Cloud Sleuth
    5.链路监控Spring Cloud ZipKin
    6.管理中心Spring Cloud AdminUI
    7.监控平台prometheus+EFK
服务注册与发现 服务注册与发现的概念与作用
实现服务注册与发现的方案
1.Dubbo的简介
2.Zookeeper的简介
3.Netflix Eureka的简介
Spring Cloud Eureka方案
1.Spring Cloud Eureka的系统架构
2.Eureka Server的设计
3.Eureka Client的设计
4.服务发现的设计
  • 使用ribbon的设计
  • 使用feign的设计
5.熔断机制
  • 断路器设计模式
  • 线程池隔离、优雅降级与熔断
  • Hystrix的断路器设计
6.高可靠设计与Eureka集群
练习:使用Eureka构建微服务系统
1.Eureka Server
2.Eureka Client
3.使用ribbon/feign进行微服务间调用
4.设计熔断器

 

微服务层的设计 微服务架构的6种设计模式
1.聚合模式
    互联网纵向切分在微服务的实现
    纵向切分应当注意的设计问题
    避免跨库关联查询的设计
    采用分布式事务解决跨库的事务操作
2.代理模式
    互联网横向切分与读写分离在微服务的实现
3.链式模式
    复杂应用场景与生产流水线的设计思路
4.分支模式
5.数据共享模式
6.异步消息模式
案例:微服务实现异步化操作
微服务的粒度
1.微服务的拆分原则
2.微服务的拆分方式
微服务设计的反模式
1.太多数据迁移
2.数据共享反模式
3.频繁交互反模式
探讨:如何解决微服务接口太多的问题

 

服务网关 服务网关在微服务架构中的作用
1.多渠道用户接入
    微服务前后端分离的架构设计
2.微服务的负载均衡
    负载均衡的难题:Session管理
3.路由网关(zuul)
    蓝绿发布、滚动发布、灰度发布与金丝雀发布 权限验证与安全保障
    路由网关的设计实现
4.流量控制与节流
练习:设计服务网关、路由网关与断路器
配置管理与DevOps DevOps简介
1.微服务为什么需要DevOps
2.微服务的测试过程
3.微服务的发布过程
4.持续集成方法实践
5. 持续交付方法实践。

二、中间件产品介绍,介绍功能及特性
  • 分布式缓存(redis)
  • 重点:分布式数据库(MySQl),介绍主从复制、分库分表代理层等;
  • 分布式消息队列(Kafak、rockerQ等),比较各产品的差异等。
云计算与分布式架构之:内存数据库的设计 内存数据库技术
1.内存数据库的概念
2.解析内存数据库的运行原理
3.Oracle TimesTen的介绍
4.Gemfire及其在12306的应用
Redis内存数据库技术
1.Redis的运行原理及其特点
2.Redis的部署形式
3.Redis的应用设计
案例:spring-redis-data的设计应用
案例:京东订单系统的优化过程
4.内存数据库的设计局限

 

云计算与分布式架构之:应用缓存的设计
应用缓存技术
1.页面静态缓存
2.应用缓存技术解决的问题
3.单机缓存 vs. 分布式缓存
4.分布式缓存的特点及其设计
Memcached技术
1.Memcached技术及其特点
2.分布式哈希算法及其一致性哈希
3.Memcached的部署结构及其应用方案
案例:负载均衡的session同步及其故障转移
如何在原有系统上进行应用缓存改造
1.Spring + Memcached的设计改造过程
2.Hibernate + Memcached的设计改造过程
3.Memcached的命中率分析及其调优
应用缓存的设计过程及其应当注意的问题
1.负载均衡的Session同步及其故障转移
2.缓存服务器雪崩现象及其解决思路
3.缓存服务器依赖现象及其解决思路
4.缓存服务器穿透现象及其解决思路

 

云计算与分布式架构之:异步化操作的设计
1.异步化操作的原理
案例:12306的异步化改造过程
2.异步化操作的设计实践
Netty与Kafka的设计实现
3.分布式队列的设计
案例:用消息队列解决分布式事务
案例:用消息队列解决内存数据库的同步
4.分布式锁的设计实现
剖析分布式锁要解决的问题
基于数据库的分布式锁
基于缓存的分布式锁
基于Zookeeper的分布式锁

三、Cloud native架构介绍
  • Docker+K8S基本原理;
  • Server Mesh原理及当前开源产品
Cloud native的支持技术 微服务的分布式运维
1.Kubernetes简介
2.用Kubernetes进行分布式运维
探讨:如何构建一个微服务运营平台
将微服务部署到Docker中
1.Docker vs. 虚拟化
2.Docker的运行方式
3.Docker的基本操作
演练:微服务在Docker中的部署过程
练习:模拟构建一个微服务系统
微服务的分布式运维
3.Kubernetes的运行原理解析
4.Kubernetes命令与操作
5.Kubernetes管理界面
6.用配置文件在Kubernetes中部署微服务
演示:Git+Jenkins+docker+k8s的自动化分布式部署
微服务设计指南
1.如何划分微服务
2.服务的接口与参数设计
3.服务的验证设计
案例:高负载微服务系统的架构演进之路
服务网格(Service Mesh)
1.服务网格的概念
2.Istio技术框架简介

 

云计算与分布式架构之:不断演进的架构设计过程 互联网+时代的架构设计特点
1.互联网+带来的巨大变革
2.互联网公司不断面对的升级改造
3.传统行业必须面对的互联网转型
好的架构源于不断的衍变
案例:58同城的架构衍变过程
1.最初的架构设计
2.网络接入层的改造过程
3.数据库拆分的改造过程
服务化为中心的改造过程




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

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

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

咨询电话010-62883247

                4007991916

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

 

微信号.jpg

  微信咨询

随时听讲课

聚焦技术实践

订制培训 更多>>