《Web性能权威指南》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(加)格里高利克著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2014
  • ISBN:9787115349101
  • 页数:318 页
图书介绍:本书是谷歌公司高性能团队核心成员的权威之作,堪称实战经验与规范解读完美结合的产物。本书目标是涵盖Web开发者技术体系中应该掌握的所有网络及性能优化知识。全书以性能优化为主线,从TCP、UDP和TLS协议讲起,解释了如何针对这几种协议和基础设施来优化应用。

第一部分 网络技术概览 3

第1章 延迟与带宽 3

1.1速度是关键 3

1.2延迟的构成 4

1.3光速与传播延迟 6

1.4延迟的最后一公里 7

1.5网络核心的带宽 8

1.6网络边缘的带宽 9

1.7目标:高带宽和低延迟 10

第2章 TCP的构成 13

2.1三次握手 14

2.2拥塞预防及控制 16

2.2.1流量控制 16

2.2.2慢启动 18

2.2.3拥塞预防 24

2.3带宽延迟积 25

2.4队首阻塞 27

2.5针对TCP的优化建议 28

2.5.1服务器配置调优 29

2.5.2应用程序行为调优 30

2.5.3性能检查清单 30

第3章 UDP的构成 31

3.1无协议服务 32

3.2 UDP与网络地址转换器 34

3.2.1连接状态超时 35

3.2.2 NAT穿透 36

3.2.3 STUN、TURN与ICE 37

3.3针对UDP的优化建议 39

第4章 传输层安全(TLS) 41

4.1加密、身份验证与完整性 42

4.2 TLS握手 44

4.2.1应用层协议协商(ALPN) 46

4.2.2服务器名称指示(SNI) 47

4.3 TLS会话恢复 48

4.3.1会话标识符 48

4.3.2会话记录单 49

4.4信任链与证书颁发机构 50

4.5证书撤销 52

4.5.1证书撤销名单(CRL) 53

4.5.2在线证书状态协议(OCSP) 54

4.6 TLS记录协议 54

4.7针对TLS的优化建议 55

4.7.1计算成本 55

4.7.2尽早完成(握手) 56

4.7.3会话缓存与无状态恢复 58

4.7.4 TLS 记录大小 59

4.7.5 TLS压缩 60

4.7.6证书链的长度 61

4.7.7 OCSP封套 62

4.7.8 HTTP严格传输安全(HSTS) 62

4.8性能检查清单 63

4.9测试与验证 64

第二部分 无线网络性能 69

第5章 无线网络概览 69

5.1无所不在的连接 69

5.2无线网络的类型 70

5.3无线网络的性能基础 71

5.3.1带宽 71

5.3.2信号强度 74

5.3.3调制 75

5.4测量现实中的无线性能 76

第6章 Wi-Fi 79

6.1从以太网到无线局域网 79

6.2Wi-Fi标准及功能 81

6.3测量和优化Wi-Fi性能 81

6.4针对Wi-Fi的优化建议 84

6.4.1利用不计流量的带宽 84

6.4.2适应可变带宽 85

6.4.3适应可变的延迟时间 86

第7章 移动网络 87

7.1 G字号移动网络简介 87

7.1.1最早提供数据服务的2G 88

7.1.2 3GPP与3GPP2 89

7.1.3 3G技术的演进 91

7.1.4 IMT-Advanced的4G要求 93

7.1.5长期演进(LTE) 94

7.1.6 HSPA+推进世界范围内的4G普及 95

7.1.7为多代并存的未来规划 96

7.2设备特性及能力 97

7.3无线电资源控制器(RRC) 99

7.3.1 3G、4G和Wi-Fi对电源的要求 101

7.3.2 LTE RRC状态机 102

7.3.3 HSPA与HSPA+(UMTS)RRC状态机 104

7.3.4 EV-DO(CDMA)RRC状态机 106

7.3.5低效率的周期性传输 107

7.4端到端的运营商架构 108

7.4.1无线接入网络(RAN) 108

7.4.2核心网络 110

7.4.3回程容量与延迟 112

7.5移动网络中的分组流 113

7.5.1初始化请求 113

7.5.2入站数据流 116

7.6异质网络(HetNet) 117

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

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

8.1节约用电 122

8.2消除周期性及无效的数据传输 124

8.3预测网络延迟上限 126

8.3.1考虑RRC状态切换 127

8.3.2解耦用户交互与网络通信 128

8.4面对多网络接口并存的现实 128

8.5爆发传输数据并转为空闲 130

8.6把负载转移到Wi-Fi网络 131

8.7遵从协议和应用最佳实践 131

第三部分 HTTP 135

第9章 HTTP简史 135

9.1 HTTP 0.9:只有一行的协议 135

9.2 HTTP 1.0:迅速发展及参考性RFC 136

9.3 HTTP 1.1:互联网标准 138

9.4 HTTP 2.0:改进传输性能 141

第10章 Web性能要点 143

10.1超文本、网页和Web应用 144

10.2剖析现代Web应用 146

10.2.1速度、性能与用户期望 147

10.2.2分析资源瀑布 148

10.3性能来源:计算、渲染和网络访问 151

10.3.1更多带宽其实不(太)重要 152

10.3.2延迟是性能瓶颈 152

10.4人造和真实用户性能度量 154

10.5针对浏览器的优化建议 157

第11章 HTTP1.x 161

11.1持久连接的优点 163

11.2 HTTP管道 165

11.3使用多个TCP连接 169

11.4域名分区 171

11.5度量和控制协议开销 173

11.6连接与拼合 174

11.7嵌入资源 177

第12章 HTTP 2.0 179

12.1历史及其与SPDY的渊源 180

12.2走向HTTP 2.0 181

12.3设计和技术目标 182

12.3.1二进制分帧层 183

12.3.2流、消息和帧 184

12.3.3多向请求与响应 185

12.3.4请求优先级 186

12.3.5每个来源一个连接 188

12.3.6流量控制 189

12.3.7服务器推送 190

12.3.8首部压缩 192

12.3.9有效的HTTP 2.0升级与发现 194

12.4二进制分帧简介 196

12.4.1发起新流 197

12.4.2发送应用数据 198

12.4.3 HTTP 2.0帧数据流分析 199

第13章 优化应用的交付 201

13.1经典的性能优化最佳实践 203

13.1.1在客户端缓存资源 204

13.1.2压缩传输的数据 205

13.1.3消除不必要的请求字节 206

13.1.4并行处理请求和响应 207

13.2针对HTTP 1.x的优化建议 208

13.3针对HTTP 2.0的优化建议 209

13.3.1去掉对1.x的优化 209

13.3.2双协议应用策略 210

13.3.3 1.x与2.0的相互转换 212

13.3.4评估服务器质量与性能 213

13.3.5 2.0与TLS 214

13.3.6负载均衡器、代理及应用服务器 215

第四部分 浏览器API与协议 219

第14章 浏览器网络概述 219

14.1连接管理与优化 220

14.2网络安全与沙箱 222

14.3资源与客户端状态缓存 222

14.4应用API与协议 223

第15章 XMLHttpRequest 225

15.1 XHR简史 226

15.2跨源资源共享(CORS) 227

15.3通过XHR下载数据 230

15.4通过XHR上传数据 231

15.5监控下载和上传进度 233

15.6通过XHR实现流式数据传输 234

15.7实时通知与交付 236

15.7.1通过XHR实现轮询 237

15.7.2通过XHR实现长轮询 238

15.8 XHR使用场景及性能 240

第16章 服务器发送事件 243

16.1 EventSource API 243

16.2 Event Stream协议 245

16.3 SSE使用场景及性能 248

第17章 WebSocket 251

17.1 WebSocket API 252

17.1.1 WS与WSS 253

17.1.2接收文本和二进制数据 253

17.1.3发送文本和二进制数据 255

17.1.4子协议协商 256

17.2 WebSocket协议 257

17.2.1二进制分帧层 258

17.2.2协议扩展 260

17.2.3 HTTP升级协商 261

17.3 WebSocket使用场景及性能 264

17.3.1请求和响应流 264

17.3.2消息开销 265

17.3.3数据效率及压缩 266

17.3.4自定义应用协议 266

17.3.5部署WebSocket基础设施 267

17.4性能检查表 269

第18章 WebRTC 271

18.1标准和WebRTC的发展 272

18.2音频和视频引擎 272

18.3实时网络传输 276

18.4建立端到端的连接 280

18.4.1发信号和协商会话 280

18.4.2会话描述协议(SDP) 282

18.4.3交互连接建立(ICE) 285

18.4.4增量提供(Trickle ICE) 288

18.4.5跟踪ICE收集和连接状态 289

18.4.6完整的示例 291

18.5交付媒体和应用数据 295

18.5.1通过DTLS实现安全通信 296

18.5.2通过SRTP和SRTCP交付媒体 298

18.5.3通过SCTP交付应用数据 301

18.6 DataChannel 305

18.6.1设置与协商 307

18.6.2配置消息次序和可靠性 309

18.6.3部分可靠交付与消息大小 311

18.7 WebRTC使用场景及性能 312

18.7.1音频、视频和数据流 312

18.7.2多方通信架构 313

18.7.3基础设施及容量规划 314

18.7.4数据效率及压缩 315

18.8性能检查表 316

关于封面 318