一、书籍背景
《HTTP/2 in Action》是由 Barry Pollard 编写的关于 HTTP/2 协议的深入实践指南,于 2019 年由 Manning Publications 出版。本书旨在为开发者、网站管理员以及对互联网技术感兴趣的读者提供一份全面且易于理解的 HTTP/2 学习手册。作者 Barry Pollard 是一位拥有近二十年行业经验的专业软件开发人员,对 Web 技术、性能调优、安全和实用技术有着浓厚的兴趣。
二、书籍内容概述
第一部分:迁移到 HTTP/2
- 第 1 章:Web 技术与 HTTP
介绍了 Web 的工作原理,包括互联网与万维网的区别、HTTP 的基本概念及其历史演变,还涉及了 HTTPS 的基础知识和查看、发送、接收 HTTP 消息的工具。
- 第 2 章:通往 HTTP/2 的道路
深入探讨了 HTTP/1.1 的性能问题,如多请求导致的效率低下,以及为解决这些问题而出现的各种变通方法,如使用多个 HTTP 连接、减少请求等。同时,介绍了 SPDY 协议以及它如何演变为 HTTP/2。
- 第 3 章:升级到 HTTP/2
详细讨论了 HTTP/2 的支持情况,包括浏览器和服务器的支持现状,以及如何为网站启用 HTTP/2 的不同方法,例如直接在 Web 服务器上启用、使用反向代理或通过 CDN 启用。最后,提供了关于 HTTP/2 设置故障排除的建议。
第二部分:使用 HTTP/2
- 第 4 章:HTTP/2 协议基础
阐述了 HTTP/2 与 HTTP/1 的主要区别,包括二进制协议、多路复用、流优先级、头部压缩和服务器推送等特性。介绍了如何建立 HTTP/2 连接,包括使用 HTTPS 协商、HTTP 升级头和先验知识等方法。
- 第 5 章:实现 HTTP/2 推送
详细讲解了 HTTP/2 服务器推送的原理和实现方法,包括如何使用 HTTP 链接头进行推送、如何查看推送的资源、以及如何根据条件进行推送。讨论了推送的性能影响和使用场景。
- 第 6 章:为 HTTP/2 优化
探讨了 HTTP/2 对 Web 开发实践的影响,分析了在 HTTP/2 环境下哪些 HTTP/1.1 的优化技巧可能不再适用,哪些 Web 性能优化技术仍然有效,并讨论了如何同时针对 HTTP/1.1 和 HTTP/2 进行优化。
第三部分:高级 HTTP/2
- 第 7 章:高级 HTTP/2 概念
深入讨论了 HTTP/2 的高级特性,如流状态、流量控制和优先级设置。通过实际例子展示了如何在不同的 HTTP/2 实现中进行一致性测试。
- 第 8 章:HPACK 头部压缩
详细介绍了 HPACK 协议,包括头部压缩的必要性、压缩的工作原理、Huffman 编码等技术细节,以及 HPACK 在客户端和服务器实现中的应用。
第四部分:HTTP 的未来
- 第 9 章:TCP、QUIC 和 HTTP/3
分析了 TCP 的低效问题以及它们对 HTTP/2 的影响,介绍了 QUIC 协议及其性能优势,并探讨了 HTTP/3 的发展方向。
- 第 10 章:HTTP 的未来走向
讨论了 HTTP/2 的一些争议点,如隐私问题、状态管理和传输协议问题。同时,回顾了 HTTP/2 在现实世界中的应用情况,并对未来版本的 HTTP(如 HTTP/3 或 HTTP/4)可能带来的变化进行了展望。
三、书籍特色
- 实用性强:书中不仅介绍了 HTTP/2 的理论知识,还提供了大量的实际操作示例,包括如何在不同的服务器上启用 HTTP/2、如何进行故障排除等。
- 覆盖面广:从 HTTP/2 的基础知识到高级特性,再到未来的发展趋势,内容全面,适合不同层次的读者。
- 紧跟技术前沿:随着 HTTP/2 技术的不断发展,书中内容也及时更新,反映了最新的技术实践和行业动态。
四、目标读者
- Web 开发者:希望了解如何利用 HTTP/2 提升网站性能和用户体验。
- 网站管理员:需要掌握如何在现有服务器架构中部署和优化 HTTP/2。
- 技术爱好者:对 Web 技术和网络协议感兴趣,希望深入了解 HTTP/2 的工作原理和优势。
总之,《HTTP/2 in Action》是一本全面、深入且实用的 HTTP/2 学习指南,无论是对于希望提升网站性能的专业人士,还是对 Web 技术感兴趣的普通读者,都是一本值得一读的书籍。