Web性能权威指南 PDF扫描版​

时间:2024-03-26 16:55:15

Web性能权威指南是谷歌公司高性能团队核心成员的权威之作,堪称实战经验与规范解读完美结合的产物。《Web性能权威指南》目标是涵盖Web开发者技术体系中应该掌握的所有网络及性能优化知识。全书以性能优化为主线,从TCP、UDP和TLS协议讲起,解释了如何针对这几种协议和基础设施来优化应用。然后深入探讨了无线和移动网络的工作机制。最后,揭示了HTTP协议的底层细节,同时详细介绍了HTTP 2.0、 XHR、SSE、WebSocket、WebRTC和DataChannel等现代浏览器新增的具有革命性的新能力。  

《Web性能权威指南》适合所有Web应用及站点开发人员阅读,包括但不限于前端、后端、运维、大数据分析、UI/UX、存储、视频、实时消息,以及性能工程师。

Web性能权威指南 PDF扫描版​

教程地址:Web性能权威指南 PDF扫描版

Web性能权威指南 目录:

Steve Souders推荐序

前言 XV

第一部分 网络技术概览

第1章 延迟与带宽 

1 1 速度是关键 

1 2 延迟的构成 

1 3 光速与传播延迟 

1 4 延迟的最后一公里 

1 5 网络核心的带宽 

1 6 网络边缘的带宽 

1 7 目标:高带宽和低延迟 

第2章 TCP的构成 

2 1 三次握手 

2 2 拥塞预防及控制 

2 2 1 流量控制 

2 2 2 慢启动 

2 2 3 拥塞预防 

2 3 带宽延迟积 

2 4 队首阻塞 

2 5 针对TCP的优化建议 

2 5 1 服务器配置调优 

2 5 2 应用程序行为调优 

2 5 3 性能检查清单 

第3章 UDP的构成 

3 1 无协议服务 

3 2 UDP与网络地址转换器 

3 2 1 连接状态超时 

3 2 2 NAT穿透 

3 2 3 STUN、TURN与ICE 

3 3 针对UDP的优化建议 

第4章 传输层安全(TLS) 

4 1 加密、身份验证与完整性 

4 2 TLS握手 

4 2 1 应用层协议协商(ALPN) 

4 2 2 服务器名称指示(SNI) 

4 3 TLS会话恢复 

4 3 1 会话标识符 

4 3 2 会话记录单 

4 4 信任链与证书颁发机构 

4 5 证书撤销 

4 5 1 证书撤销名单(CRL) 

4 5 2 在线证书状态协议(OCSP) 

4 6 TLS记录协议 

4 7 针对TLS的优化建议 

4 7 1 计算成本 

4 7 2 尽早完成(握手) 

4 7 3 会话缓存与无状态恢复 

4 7 4 TLS记录大小 

4 7 5 TLS压缩 

4 7 6 证书链的长度 

4 7 7 OCSP封套 

4 7 8 HTTP严格传输安全(HSTS) 

4 8 性能检查清单 

4 9 测试与验证 

第二部分 无线网络性能

第5章 无线网络概览 

5 1 无所不在的连接 

5 2 无线网络的类型 

5 3 无线网络的性能基础 

5 3 1 带宽 

5 3 2 信号强度 

5 3 3 调制 

5 4 测量现实中的无线性能 

第6章 Wi-Fi 

6 1 从以太网到无线局域网 

6 2 Wi-Fi标准及功能 

6 3 测量和优化Wi-Fi性能 

6 4 针对Wi-Fi的优化建议 

6 4 1 利用不计流量的带宽 

6 4 2 适应可变带宽 

6 4 3 适应可变的延迟时间 

第7章 移动网络 

7 1 G字号移动网络简介 

7 1 1 最早提供数据服务的2G 

7 1 2 3GPP与3GPP2 

7 1 3 3G技术的演进 

7 1 4 IMT-Advanced的4G要求 

7 1 5 长期演进(LTE) 

7 1 6 HSPA+推进世界范围内的4G普及 

7 1 7 为多代并存的未来规划 

7 2 设备特性及能力 

7 3 无线电资源控制器(RRC) 

7 3 1 3G、4G和Wi-Fi对电源的要求 

7 3 2 LTE RRC状态机 

7 3 3 HSPA与HSPA+(UMTS)RRC状态机 

7 3 4 EV-DO(CDMA) RRC状态机 

7 3 5 低效率的周期性传输 

7 4 端到端的运营商架构 

7 4 1 无线接入网络(RAN) 

7 4 2 核心网络 

7 4 3 回程容量与延迟 

7 5 移动网络中的分组流 

7 5 1 初始化请求 

7 5 2 入站数据流 

7 6 异质网络(HetNet) 

7 7 真实的3G、4G和Wi-Fi性能 

第8章 移动网络的优化建议 

8 1 节约用电 

8 2 消除周期性及无效的数据传输 

8 3 预测网络延迟上限 

8 3 1 考虑RRC状态切换 

8 3 2 解耦用户交互与网络通信 

8 4 面对多网络接口并存的现实 

8 5 爆发传输数据并转为空闲 

8 6 把负载转移到Wi-Fi网络 

8 7 遵从协议和应用最佳实践 

第三部分 HTTP

第9章 HTTP简史 

9 1 HTTP 0 9:只有一行的协议 

9 2 HTTP 1 0:迅速发展及参考性RFC 

9 3 HTTP 1 1:互联网标准 

9 4 HTTP 2 0:改进传输性能 

第10章 Web性能要点 

10 1 超文本、网页和Web应用 

10 2 剖析现代Web应用 

10 2 1 速度、性能与用户期望 

10 2 2 分析资源瀑布 

10 3 性能来源:计算、渲染和网络访问 

10 3 1 更多带宽其实不(太)重要 

10 3 2 延迟是性能瓶颈 

10 4 人造和真实用户性能度量 

10 5 针对浏览器的优化建议 

第11章 HTTP 1 x 

11 1 持久连接的优点 

11 2 HTTP管道 

11 3 使用多个TCP连接 

11 4 域名分区 

11 5 度量和控制协议开销 

11 6 连接与拼合 

11 7 嵌入资源 

第12章 HTTP 2 0 

12 1 历史及其与SPDY的渊源 

12 2 走向HTTP 2 0 

12 3 设计和技术目标 

12 3 1 二进制分帧层 

12 3 2 流、消息和帧 

12 3 3 多向请求与响应 

12 3 4 请求优先级 

12 3 5 每个来源一个连接 

12 3 6 流量控制 

12 3 7 服务器推送 

12 3 8 首部压缩 

12 3 9 有效的HTTP 2 0升级与发现 

12 4 二进制分帧简介 

12 4 1 发起新流 

12 4 2 发送应用数据 

12 4 3 HTTP 2 0帧数据流分析 

第13章 优化应用的交付 

13 1 经典的性能优化最佳实践 

13 1 1 在客户端缓存资源 

13 1 2 压缩传输的数据 

13 1 3 消除不必要的请求字节 

13 1 4 并行处理请求和响应 

13 2 针对HTTP 1 x的优化建议 

13 3 针对HTTP 2 0的优化建议 

13 3 1 去掉对1 x的优化 

13 3 2 双协议应用策略 

13 3 3 1 x与2 0的相互转换 

13 3 4 评估服务器质量与性能 

13 3 5 2 0与TLS 

13 3 6 负载均衡器、代理及应用服务器 

第四部分 浏览器API与协议

第14章 浏览器网络概述 

14 1 连接管理与优化 

14 2 网络安全与沙箱 

14 3 资源与客户端状态缓存 

14 4 应用API与协议 

第15章 XMLHttpRequest 

15 1 XHR简史 

15 2 跨源资源共享(CORS) 

15 3 通过XHR下载数据 

15 4 通过XHR上传数据 

15 5 监控下载和上传进度 

15 6 通过XHR实现流式数据传输 

15 7 实时通知与交付 

15 7 1 通过XHR实现轮询 

15 7 2 通过XHR实现长轮询 

15 8 XHR使用场景及性能 

第16章 服务器发送事件 

16 1 EventSource API 

16 2 Event Stream协议 

16 3 SSE使用场景及性能 

第17章 WebSocket 

17 1 WebSocket API 

17 1 1 WS与WSS 

17 1 2 接收文本和二进制数据 

17 1 3 发送文本和二进制数据 

17 1 4 子协议协商 

17 2 WebSocket协议 

17 2 1 二进制分帧层 

17 2 2 协议扩展 

17 2 3 HTTP升级协商 

17 3 WebSocket使用场景及性能 

17 3 1 请求和响应流 

17 3 2 消息开销 

17 3 3 数据效率及压缩 

17 3 4 自定义应用协议 

17 3 5 部署WebSocket基础设施 

17 4 性能检查表 

第18章 WebRTC 

18 1 标准和WebRTC的发展 

18 2 音频和视频引擎 

18 3 实时网络传输 

18 4 建立端到端的连接 

18 4 1 发信号和协商会话 

18 4 2 会话描述协议(SDP) 

18 4 3 交互连接建立(ICE) 

18 4 4 增量提供(Trickle ICE) 

18 4 5 跟踪ICE收集和连接状态 

18 4 6 完整的示例 

18 5 交付媒体和应用数据 

18 5 1 通过DTLS实现安全通信 

18 5 2 通过SRTP和SRTCP交付媒体 

18 5 3 通过SCTP交付应用数据 

18 6 DataChannel 

18 6 1 设置与协商 

18 6 2 配置消息次序和可靠性 

18 6 3 部分可靠交付与消息大小 

18 7 WebRTC使用场景及性能 

18 7 1 音频、视频和数据流 

18 7 2 多方通信架构 

18 7 3 基础设施及容量规划 

18 7 4 数据效率及压缩 

18 8 性能检查表