班级规模及环境--热线:4008699035 手机:15921673576( 微信同号) |
坚持小班授课,为保证培训效果,增加互动环节,每期人数限3到5人。 |
上课时间和地点 |
上课地点:【上海】:同济大学(沪西)/新城金郡商务楼(11号线白银路站) 【深圳分部】:电影大厦(地铁一号线大剧院站)/深圳大学成教院 【北京分部】:北京中山学院/福鑫大楼 【南京分部】:金港大厦(和燕路) 【武汉分部】:佳源大厦(高新二路) 【成都分部】:领馆区1号(中和大道) 【沈阳分部】:沈阳理工大学/六宅臻品 【郑州分部】:郑州大学/锦华大厦 【石家庄分部】:河北科技大学/瑞景大厦 【广州分部】:广粮大厦 【西安分部】:协同大厦
最近开课时间(周末班/连续班/晚班):2024年12月30日 |
实验设备 |
☆资深工程师授课
☆注重质量
☆边讲边练
☆合格学员免费推荐工作
★实验设备请点击这儿查看★ |
质量保障 |
1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听;
2、课程完成后,授课老师留给学员手机和Email,保障培训效果,免费提供半年的技术支持。
3、培训合格学员可享受免费推荐就业机会。 |
课程大纲 |
课程信息
互联网架构师应对如今的高并发要具备哪些能力?分布式架构理论,流量从小到大典型站点系统架构遇到的问题及解决方案,大数据量下数据的高可用架构设计,与高可用架构设计的常见准则。
培训特色
本课程来源于讲师在MT多年架构演进中的真实架构分享,不仅是分布式理论与架构设计的原理讲解,还包括大量工作中实际案例,追本溯源的分析了为了满足各类业务需求,系统架构设计的方式方法与方向。
目标收益
通过本课程,学员能够真实掌握互联网高可用架构设计过程中所遇问题的归纳、分析与总结,并有针对性的给出解决方法,课程将重现这些问题的场景,通过实例讲解,并对应到学员的实际工作问题,有效的启发思路、激发兴趣、掌握解决问题的基本方法。
培训对象
各类互联网/IT/软件企业和研发机构的软件架构师、软件设计师、程序员。对于有明确互联网产品业务需求的个人和团队,效果更佳。
学员基础
学员要了解一名“程序员”所需要具备的基本技能。
课程大纲
主题 内容
一、好玩分布式理论与实践
(1)分布式系统概念
(2)原理一:FLP不可能原理
2.1)FLP不可能原理的概念
2.2)FLP不可能原理的工程意义
(3)分布式id生成器
3.1)数据库自增id生成法
3.2)单点服务法
3.3)uuid法
3.4)时间标识法
3.5)类snowflake算法
(4)如何测量服务器之间的时间差
(5)原理二:SMC原理
5.1)SMC原理的概念
5.2)SMC原理的工程意义
(6)消息的可靠投递
6.1)通用消息投递流程
6.2)通用消息投递流程的缺陷
6.3)如何保证消息的不丢失
6.4)如何保证消息的不重复
(7)原理三:CAP原理
7.1)CAP原理的概念
7.2)CAP原理的证明
7.3)CAP原理的工程意义
7.4)一致性模型及工程实践
7.5)2PC简介
(8)CAP原理实践
8.1)如何预防“读写事务”的死锁
8.2)如何保证“查询修改事务”的一致性
8.3)如何实现无锁KV缓存
8.4)如何快速实现简单的伪分布式事务
二、站点架构流量从1到10亿
(1)小流量站点架构与最佳实践
1.1)小流量站点业务需求分析
1.2)小流量站点架构抽象
1.3)小流量站点架构选型
1.4)LAMP的优势与建议
1.5)小流量站点核心矛盾分析
1.6)DAO与ORM优化
(2)中等规模站点架构与最佳实践
2.1)中等规模站点业务需求分析
2.2)中等规模站点架构抽象
2.3)中等规模站点架构选型
2.4)分布式架构
2.5)动静分离技术
2.6)主从同步与读写分离技术
2.7)负载均衡与DNS轮询技术
2.8)中等规模站点核心矛盾分析
2.9)业务/数据/代码垂直拆分技术
2.10)CDN与静态加速技术
(3)大流量站点架构与最佳实践
3.1)大流量站点业务需求分析
3.2)大流量站点架构抽象
3.3)大流量站点架构选型
3.4)性能与成本的技术转型建议
3.5)大流量站点核心矛盾分析
3.6)深度分层架构设计
3.7)水平拆分技术
3.8)服务化实践
3.9)反向代理技术
3.10)可用性技术
3.11)框架抽象技术
3.12)实时化技术
(4)超大流量站点架构与最佳实践
4.1)大流量站点业务需求分析
4.2)大流量站点架构抽象
4.3)大流量站点架构选型
4.4)大流量站点核心矛盾分析
4.5)架构蜘蛛网解耦方案
4.6)配置中心技术分析
4.7)消息总线的适用场景
4.8)柔性服务技术
4.9)服务治理简介
4.10)中间件技术
4.11)自动化方向
4.12)产品智能化方向
(5)未来的挑战
5.1)无线化的架构的挑战
5.2)大数据实时计算的挑战
5.3)多机房多活的挑战
5.4)多架构模式
5.5)自动化的未来
三、大数据时代的数据库软件架构设计与实践
(1)数据库设计基本概念
(2)数据库架构-可用性设计与实践
2.1)读高可用设计
2.2)写高可用设计
2.3)实战解决方案
(3)数据库架构-读性能设计与实践
3.1)索引提速设计
3.2)从库扩容设计
3.3)缓存扩容设计
(4)数据库架构-一致性设计与实践
4.1)主从不一致解决方案
4.2)缓存不一致解决方案
(5)数据库架构-扩展性设计与实践
5.1)秒级扩容方案
5.2)字段扩展方案
5.3)数据迁移方案
(6)数据库架构-水平切分设计与实践
6.1)“单Key型”表结构水平切分
6.2)“1对多型”表结构水平切分
6.3)“多对多型”表结构水平切分
6.4)“多Key型”表结构水平切分
(7)数据库中间件与分库SQL实战
7.1)IN语句的玩法
7.2)非patition key上的SQL玩法
7.3)夸库分页的玩法
四、分布式系统通用设计准则
(1)系统拆分准则
1.1)系统拆分业务举例
1.2)系统拆分方法论
1.3)自顶向下逐层分解的设计实践
(2)灾备准则
2.1)机房内故障可用性设计
2.2)机房故障可用性设计
2.3)灾备常见实践
2.4)过载保护算法
2.5)异构服务器的负载均衡
(3)水平扩展准则
3.1)接入层水平扩展设计
3.2)逻辑层水平扩展设计
3.3)数据层水平扩展设计
(4)限流准则
4.1)账户级限流设计
4.2)ip级限流设计
4.3)调用级限流设计
4.4)流量的区分
(5)降级原则
5.1)系统降级
5.2)业务降级
(6)异步原则
6.1)业务异步设计
6.2)消息总线的异步作用
6.3)站点线程模型的最大问题
6.4)异步服务模型框架
(7)分离原则
7.1)读写分离技术
7.2)动静分离技术
7.3)线上访问与后台访问分离
7.4)在线访问与离线访问分离
(8)监控原则
8.1)服务器监控技术
8.2)服务存活性监控技术
8.3)日志监控
8.4)接口监控
8.5)语义监控
五、大作业实战
(1)秒杀系统设计实战 |
|