版权信息
书名:HTTP/2基础教程
作者:[美] Stephen Ludin Javier Garza
译者:罗正龙 郑维智
ISBN:978-7-115-47389-9
本书由北京图灵文化发展有限公司发行数字版。版权所有,侵权必
究。
您购买的图灵电子书仅供您个人使用,未经授权,不得以任何方式复制
和传播本书内容。
我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。
如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐
号等维权措施,并可能追究法律责任。
图灵社区会员专享 尊重版权
版权声明
O'Reilly Media, Inc. 介绍
业界评论
中文版推荐序一:等待与希望
中文版推荐序二
序
前言
本书目标读者
本书涵盖范围
推荐资源
排版约定
使用代码示例
O'Reilly Safari
联系我们
致谢
Javier Garza
Stephen Ludin
电子版
第 1 章 HTTP 进化史
1.1 HTTP/0.9和HTTP/1.0
1.2 HTTP/1.1
1.3 1.1版本之后
1.4 SPDY
1.5 HTTP/2
第 2 章 HTTP/2 快速入门
2.1 启动并运行
2.2 获取证书
2.2.1 使用在线证书生成器
2.2.2 自签名证书
2.2.3 Let's Encrypt
2.3 获取并运行你的第一个HTTP/2服务器
2.4 选择浏览器
第 3 章 Web 优化“黑魔法”的动机与方式
3.1 当前的性能挑战
3.1.1 剖析Web页面请求
3.1.2 关键性能指标
3.1.3 HTTP/1的问题
3.2 Web性能优化技术
3.2.1 Web性能的最佳实践
3.2.2 反模式
3.3 小结
第 4 章 HTTP/2 迁移
4.1 浏览器的支持情况
4.2 迁移到TLS
4.3 撤销针对HTTP/1.1的“优化”
4.4 第三方资源
4.5 支持旧版本客户端
4.6 小结
第 5 章 HTTP/2 协议
5.1 HTTP/2分层
5.2 连接
5.3 帧
5.4 流
5.4.1 消息
5.4.2 流量控制
5.4.3 优先级
5.5 服务端推送
5.5.1 推送对象
5.5.2 选择要推送的资源
5.6 首部压缩
5.7 线上传输
一个简单的GET请求
5.8 小结
第 6 章 HTTP/2 性能
6.1 客户端实现
6.2 延迟
6.3 丢包
6.4 服务端推送
6.5 首字节时间
6.6 第三方资源
6.7 HTTP/2反模式
6.7.1 域名拆分
6.7.2 资源内联
6.7.3 资源合并
6.7.4 禁用cookie的域名
6.7.5 生成精灵图
6.7.6 资源预取
6.8 现实情况中的性能
6.8.1 性能测量方法论
6.8.2 案例1:www.facebook.com
6.8.3 案例2:www.yahoo.com
6.9 小结
第 7 章 HTTP/2 实现
7.1 桌面Web浏览器
7.1.1 只支持TLS版
7.1.2 禁用HTTP/2
7.1.3 支持HTTP/2服务端推送
7.1.4 连接归并
7.1.5 HTTP/2调试工具
7.1.6 浏览器beta版本
7.2 移动端
7.3 移动端应用支持
7.4 服务器、代理以及缓存
7.5 内容分发网络
7.6 小结
第 8 章 HTTP/2 调试
8.1 浏览器开发者工具
8.1.1 Chrome开发者工具
8.1.2 Firefox开发者工具
8.1.3 在iOS上使用Charles Proxy调试h2
8.1.4 在Android上调试h2
8.2 WebPagetest
8.3 OpenSSL
OpenSSL命令
8.4 nghttp2
使用nghttp
8.5 curl
使用curl
8.6 h2i
8.7 Wireshark
8.8 小结
第 9 章 展望未来
9.1 TCP还是UDP
9.2 QUIC
9.3 TLS 1.3
9.4 关于HTTP/3
9.5 小结
附录 A HTTP/2 帧
A.1 帧首部
A.2 DATA帧
A.2.1 DATA帧字段
A.2.2 DATA帧标识位
A.3 HEADERS帧
A.3.1 HEADERS帧字段
A.3.2 HEADERS帧标识位
A.4 PRIORITY帧
PRIORITY帧字段
A.5 RST_STREAM帧
A.6 SETTINGS帧
SETTINGS帧参数列表
A.7 PUSH_PROMISE帧
A.7.1 PUSH_PROMISE帧字段
A.7.2 PUSH_PROMISE帧标识
A.8 PING帧
A.9 GOAWAY帧
GOAWAY帧字段
A.10 WINDOW_UPDATE帧
WINDOW_UPDATE帧字段
A.11 CONTINUATION帧
A.11.1 CONTINUATION帧字段
A.11.2 CONTINUATION帧标识位
附录 B 工具引用
B.1 工具
B.2 浏览器
B.3 服务器、代理和缓存
关于作者
关于封面