4006-998-758
3000+课程任你选择
分布式系统、架构设计
研发学院 分布式系统、架构设计 开课时间:2022-05-17
曹雪松

曾担任淘宝技术总监、华胜天成项目经理,精通软件设计的理论、实践和工具,有10年以上的大型项目研发及项目管理经验,曾经策划多个大型项目与网站的架构,主持过访问量达亿级大型网站,熟悉大型网站的优化与运维。掌握多种开发平台熟悉各种中间件框架平台,研究过大量开源的框架平台,经过多年实践形成自己架构风格,擅长Java、javaEE方面的各种技术; 在软件架构、设计模式、详细设计、重构、海量数据处理和优化、中间件技术、nosql等方面有丰富的实践经验亲自参与实施项目:淘宝数据魔方,淘宝服务平台,国电调试所项目管理系统,中科院子午工程数据与通信系统,某大型电子商务网站架构、项目管理、性能优化,苏州金莱克洁具有限公司ERP项目,苏州海关保税加工辅助核销系统等。


查看老师详情
课程内容

课程时长


2天(6小时/天) 

 

课程大纲

 

       课程主题

              课程内容

第一部分

架构总览

内容一、架构整体分析

1.    高性能分析

2.    高可用分析

3.    高可扩展性分析

内容二、如何设计高性能架构

1.性能的度量指标

1.单机高性能分析

2.集群高性能分析

3.任务分配设计

4.任务分解设计

内容三、如何设计高可用架构

1.    可用性的度量指标

2.    计算高可用分析

3.    存储高可用分析

内容四、如何设计高可扩展架构

1.    什么是可扩展

2.    架构可扩展的设计

3.    应用课扩展的设计

4.    代码可扩展的设计

第二部分

架构理论篇

 

一、走正确的路

1.如何走正确的路

2.写代码要经历的阶段

3.大牛的法宝

二、 架构师概览

1.架构师需要懂得哪些知识

2.软件行业架构师两个定义

3.   软件行业互联网与常规企业的区别

4.架构师内部方向

5.架构师不是万能的

6.互联网团队特点

7.架构是要靠团队做出来的

8.架构师会做什么?

9.架构师团队内做的事情

10.互联网常见架构优化项

三、如何成为架构师

1.行业动态要了解,时刻关注技术更新

2.开发时先设计然后在做,做好后总结

3.关注公司业务动态,结合产品观察

4.关注系统运维及相关技术

5.关注业务划分技巧及目的

6.清晰化自己掌握的技术的用途

7.多沟通

四、互联网架构师必备技能

1.卓越的程序员:每个好架构师都是一位出色的程序员

2.抽象思维:驾驭概念的技能是最高潜力

3.技术前瞻性:站在技术的山顶向前眺望

4.透过问题看本质:解决问题和绕开问题

5.跨域知识:要成为百科全书式的智者

6.沟通能力:善于沟通的技术领袖

五、架构师如何快速成长

1.架构师如何避免从入门到忘记

2.架构师如何高效提升技术能力

3.如何学习和应用开源系统

六、如何输出合理的架构

1.架构设计前期应该怎么做

2.架构设计中期应该怎么做

3.架构设计后期应该怎么做

第三部分

高性能高可用的分布式数据存储架构设计

内容一、数据库可扩展性设计之数据切分

1.何谓数据切分

2.数据的垂直切分

3.数据垂直切分带来的问题及解决方案

4.数据的读写分离

5.读写分离带来的问题及解决方案

6.数据的水平切分

7.数据水平切分带来的问题及解决方案

8.数据切分后的整合方案

内容二、非结构化数据的存储

1.思考:58同城帖子表设计、电商商品表设计

2.增加列的表结构应该如何设计

3.NOSQL介绍

4.NOSQL的分类及使用场景分析

5.案例分析:淘宝数据魔方技术架构

6.案例分析:图片存储案例分析

内容三、存储架构模式

1.    存储架构模式-复制模式

2.    存储架构模式-分片和分区架构

内容四、如何设计存储架构

1.    估算性能需求

2.    选择存储   系统

3.    设计存储方案

4.    实战案例

第四部分

高性能高可用分布式计算架构

一、合理的多级缓存架构

1.    多级缓存架构

2.    常见的缓存解析

2.1.页面缓存

2.2.页面片段缓存

2.3.浏览器缓存

2.4.反向代理服务器缓存

2.5.数据库前端缓存

2.6.其它应用缓存

二、负载均衡架构

1.负载均衡架构

2.负载均衡技术解析

3.通用的负载均衡算法

4.负载均衡使用技巧

三、接口高可用

1.接口高可用整体框架

2.限流

3.排队

4.降级

5.熔断

第五部分

微服务架构

一、微服务架构详解

1.微服务与SOA概述

2.微服务与SOA剖析

3.微服务与其它可扩展架构

4.微服务架构的陷阱

5.微服务架构的挑战

二、微服务基础设施

1.微服务基础设施架构

2.微服务框架模式

3.常见的微服务框架选择

三、微服务拆分技巧

1.微服务整体架构思路

2.如何按业务拆分微服务

3.如何按质量属性拆分微服务

第六部分

异地多活架构

内容一.高可用架构三大核心原理

1.   掌握 FLP 原理的核心技术点

2.   全面掌握 CAP 定理

3.   掌握 BASE 理论

内容二、如何用 FMEA 方法排除架构隐患?

1.   掌握 FMEA 方法的基本概念

2.   掌握 FMEA 的技巧和应用

内容三、业务级灾备架构设计

1.   同城多中心架构

2.   跨城多中心架构

3.   跨国数据中心架构

内容四、异地多活架构的三种模式

1.   业务定制型异地多活

2.   业务通用型异地多活

3.   存储通用型异地多活

内容五、业务定制型异地多活架构设计

1.   异地多活 - 1个原理

2.   异地多活 - 3大原则

3.   异地多活 - 4个步骤

4.   异地多活 - 5个技巧

第七部分

设计贴合业务的高可用高性能中间件

内容一、单机高性能网络模型

1.   传统网络模型

2.   Reactor 网络模型

3.   Proactor 网络模型

4.   网络模型对比

内容二、基于 ZooKeeper 实现高可用架构

1.   ZooKeeper 高可用相关特性

2.   ZooKeeper 实现主备切换

3.   ZooKeeper 实现集群选举

内容三、分片架构设计技巧

1.   Elasticsearch 集群设计技巧

2.   Redis cluster 设计技巧

3.   MongoDB/HDFS 集群设计技巧

内容四、常见集群算法解析

1.   Gossip 协议

2.   Bully 选举算法

3.   Raft 选举算法

第八部分

架构演进

1.架构重构技巧

2.架构演进技巧

3.某系统十万用户规模架构设计

4.某系统百万用户规模架构设计

5.某系统千万用户规模架构设计

6.某系统忆级用户规模架构设计




返回上一级