阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      《大型网站技术架构 - 核心原理与案例分析》 目录

      本章目录

      第 1 篇 概述

      大型网站架构演化 2

      * 1.1 大型网站软件系统的特点	3
      * 1.2 大型网站架构演化发展历程	4
          * 1.2.1 初始阶段的网站架构	4
          * 1.2.2 应用服务和数据服务分离	4
          * 1.2.3 使用缓存改善网站性能	5
          * 1.2.4 使用应用服务器集群改善网站的并发处理能力	6
          * 1.2.5 数据库读写分离	7
          * 1.2.6 使用反向代理和 CDN 加速网站响应	8
          * 1.2.7 使用分布式文件系统和分布式数据库系统	9
          * 1.2.8 使用 NoSQL 和搜索引擎	10
          * 1.2.9 业务拆分	11
          * 1.2.10 分布式服务	11
      * 1.3 大型网站架构演化的价值观	13
          * 1.3.1 大型网站架构技术的核心价值是随网站所需灵活应对	13
          * 1.3.2 驱动大型网站技术发展的主要力量是网站的业务发展	13
      * 1.4 网站架构设计误区	14
          * 1.4.1 一味追随大公司的解决方案	14
          * 1.4.2 为了技术而技术	14
          * 1.4.3 企图用技术解决所有问题	14
      * 1.5 小结	15
      

      2 大型网站架构模式 16

      * 2.1 网站架构模式	16
          * 2.1.1 分层	17
          * 2.1.2 分割	18
          * 2.1.3 分布式	18
          * 2.1.4 集群	19
          * 2.1.5 缓存	20
          * 2.1.6 异步	20
          * 2.1.7 冗余	21
          * 2.1.8 自动化	22
          * 2.1.9 安全	23
      * 2.2 架构模式在新浪微博的应用	23
      * 2.3 小结	25
      

      3 大型网站核心架构要素 26

      * 3.1 性能	27
      * 3.2 可用性	28
      * 3.3 伸缩性	29
      * 3.4 扩展性	30
      * 3.5 安全性	30
      * 3.6 小结	31
      

      第 2 篇 架构

      4 瞬时响应:网站的高性能架构 34

      * 4.1 网站性能测试	35
          * 4.1.1 不同视角下的网站性能	35
          * 4.1.2 性能测试指标	36
          * 4.1.3 性能测试方法	39
          * 4.1.4 性能测试报告	41
          * 4.1.5 性能优化策略	41
      * 4.2 Web 前端性能优化	42
          * 4.2.1 浏览器访问优化	42
          * 4.2.2 CDN 加速	43
          * 4.2.3 反向代理	44
      * 4.3 应用服务器性能优化	45
          * 4.3.1 分布式缓存	45
          * 4.3.2 异步操作	52
          * 4.3.3 使用集群	53
          * 4.3.4 代码优化	54
      * 4.4 存储性能优化	58
          * 4.4.1 机械硬盘 vs. 固态硬盘	58
          * 4.4.2 B+ 树 vs. LSM 树	59
          * 4.4.3 RAID vs. HDFS	61
      * 4.5 小结	64
      

      5 万无一失:网站的高可用架构 66

      * 5.1 网站可用性的度量与考核	67
          * 5.1.1 网站可用性度量	67
          * 5.1.2 网站可用性考核	67
      * 5.2 高可用的网站架构	69
      * 5.3 高可用的应用	71
          * 5.3.1 通过负载均衡进行无状态服务的失效转移	72
          * 5.3.2 应用服务器集群的 Session 管理	73
      * 5.4 高可用的服务	76
      * 5.5 高可用的数据	78
          * 5.5.1 CAP 原理	79
          * 5.5.2 数据备份	82
          * 5.5.3 失效转移	84
      * 5.6 高可用网站的软件质量保证	85
          * 5.6.1 网站发布	85
          * 5.6.2 自动化测试	86
          * 5.6.3 预发布验证	87
          * 5.6.4 代码控制	88
          * 5.6.5 自动化发布	90
          * 5.6.6 灰度发布	91
      * 5.7 网站运行监控	91
          * 5.7.1 监控数据采集	92
          * 5.7.2 监控管理	93
      * 5.8 小结	94
      

      6 永无止境:网站的伸缩性架构 95

      * 6.1 网站架构的伸缩性设计	97
          * 6.1.1 不同功能进行物理分离实现伸缩	97
          * 6.1.2 单一功能通过集群规模实现伸缩	98
      * 6.2 应用服务器集群的伸缩性设计	99
          * 6.2.1 HTTP 重定向负载均衡	100
          * 6.2.2 DNS 域名解析负载均衡	101
          * 6.2.3 反向代理负载均衡	102
          * 6.2.4 IP 负载均衡	103
          * 6.2.5 数据链路层负载均衡	104
          * 6.2.6 负载均衡算法	105
      * 6.3 分布式缓存集群的伸缩性设计	106
          * 6.3.1 Memcached 分布式缓存集群的访问模型	107
          * 6.3.2 Memcached 分布式缓存集群的伸缩性挑战	107
          * 6.3.3 分布式缓存的一致性 Hash 算法	109
      * 6.4 数据存储服务器集群的伸缩性设计	112
          * 6.4.1 关系数据库集群的伸缩性设计	113
          * 6.4.2 NoSQL 数据库的伸缩性设计	117
      * 6.5 小结	119
      

      7 随需应变:网站的可扩展架构 121

      * 7.1 构建可扩展的网站架构	122
      * 7.2 利用分布式消息队列降低系统耦合性	123
          * 7.2.1 事件驱动架构	123
          * 7.2.2 分布式消息队列	124
      * 7.3 利用分布式服务打造可复用的业务平台	126
          * 7.3.1 Web Service 与企业级分布式服务	128
          * 7.3.2 大型网站分布式服务的需求与特点	129
          * 7.3.3 分布式服务框架设计	130
      * 7.4 可扩展的数据结构	131
      * 7.5 利用开放平台建设网站生态圈	132
      * 7.6 小结	134
      

      8 固若金汤:网站的安全架构 135

      * 8.1 道高一尺魔高一丈的网站应用攻击与防御	136
          * 8.1.1 XSS 攻击	136
          * 8.1.2 注入攻击	138
          * 8.1.3 CSRF 攻击	139
          * 8.1.4 其他攻击和漏洞	140
          * 8.1.5 Web 应用防火墙	141
          * 8.1.6 网站安全漏洞扫描	142
      * 8.2 信息加密技术及密钥安全管理	142
          * 8.2.1 单向散列加密	143
          * 8.2.2 对称加密	144
          * 8.2.3 非对称加密	144
          * 8.2.4 密钥安全管理	145
      * 8.3 信息过滤与反垃圾	146
          * 8.3.1 文本匹配	147
          * 8.3.2 分类算法	148
          * 8.3.3 黑名单	149
      * 8.4 电子商务风险控制	150
          * 8.4.1 风险	151
          * 8.4.2 风控	151
      * 8.5 小结	153
      

      第 3 篇 案例

      9 淘宝网的架构演化案例分析 156

      * 9.1 淘宝网的业务发展历程	157
      * 9.2 淘宝网技术架构演化	158
      * 9.3 小结	162
      

      10 维基百科的高性能架构设计分析 163

      * 10.1 Wikipedia 网站整体架构	163
      * 10.2 Wikipedia 性能优化策略	165
          * 10.2.1 Wikipedia 前端性能优化	165
          * 10.2.2 Wikipedia 服务端性能优化	166
          * 10.2.3 Wikipedia 后端性能优化	167
      

      11 海量分布式存储系统 Doris 的高可用架构设计分析 169

      * 11.1 分布式存储系统的高可用架构	170
      * 11.2 不同故障情况下的高可用解决方案	171
          * 11.2.1 分布式存储系统的故障分类	172
          * 11.2.2 正常情况下系统访问结构	172
          * 11.2.3 瞬时故障的高可用解决方案	173
          * 11.2.4 临时故障的高可用解决方案	174
          * 11.2.5 永久故障的高可用解决方案	175
      

      12 网购秒杀系统架构设计案例分析 176

      * 12.1 秒杀活动的技术挑战	177
      * 12.2 秒杀系统的应对策略	177
      * 12.3 秒杀系统架构设计	178
      * 12.4 小结	182
      

      13 大型网站典型故障案例分析 183

      * 13.1 写日志也会引发故障	184
      * 13.2 高并发访问数据库引发的故障	184
      * 13.3 高并发情况下锁引发的故障	185
      * 13.4 缓存引发的故障	185
      * 13.5 应用启动不同步引发的故障	186
      * 13.6 大文件读写独占磁盘引发的故障	186
      * 13.7 滥用生产环境引发的故障	187
      * 13.8 不规范的流程引发的故障	187
      * 13.9 不好的编程习惯引发的故障	188
      * 13.10 小结	188
      

      第 4 篇 架构师

      14 架构师领导艺术 190

      * 14.1 关注人而不是产品	191
      * 14.2 发掘人的优秀	191
      * 14.3 共享美好蓝图	192
      * 14.4 共同参与架构	193
      * 14.5 学会妥协	194
      * 14.6 成就他人	194
      

      15 网站架构师职场攻略 196

      * 15.1 发现问题,寻找突破	197
      * 15.2 提出问题,寻求支持	199
      * 15.3 解决问题,达成绩效	201
      

      16 漫话网站架构师 203

      * 16.1 按作用划分架构师	203
      * 16.2 按效果划分架构师	204
      * 16.3 按职责角色划分架构师	205
      * 16.4 按关注层次划分架构师	205
      * 16.5 按口碑划分架构师	206
      * 16.6 非主流方式划分架构师	207
      
      • 附录 A 大型网站架构技术一览 208
      • 附录 B Web 开发技术发展历程 215
      • 后记 218
      目录
      目录