Page 216 - Web性能权威指南
P. 216
通信信道的物理属性对所有应用而言都是一项硬性限制:光速及客户端与服务器之
间的距离决定了信号传播的延迟,而媒介(有线或无线)决定了由每个数据分组带
来的处理、传输、排队及其他延迟。事实上,影响绝大多数 Web 应用性能的并非带
宽,而是延迟。网速虽然越来越快,但不幸的是,延迟似乎并没有缩短:
• 1.2 节“延迟的构成”;
• 1.7 节“目标:高带宽和低延迟”;
• 10.3.2 节“延迟是性能瓶颈”。
既然我们不能让信息跑得更快,那么关键就在于对传输层和应用层采取各种可能的
优化手段,消除不必要的往返、请求,把每个分组的传输距离缩到最短——比如把
服务器放到离客户更近的地方。
针对无线网络物理层的特有属性采取优化措施可以让任何应用受益,因为无线环境
的延迟高且带宽总是那么贵。对 API 而言,有线与无线网络之间的差别特别明显,
对此视而不见可不明智。只要对何时以及如何下载资源、信标进行简单的优化,就
能显著改善用户感觉到的延迟、电池使用时间和应用的整体用户体验:
• 6.4 节“针对 Wi-Fi 的优化建议”;
• 第 8 章“移动网络的优化建议”。
自物理层向上,接下来就是要保证任何一台服务器都要按照最新的 TCP 和 TLS 最
佳实践进行配置。针对底层协议的优化能保证每个客户端在与服务器通信时,都可
以获取最佳性能——高吞吐量和低延迟:
• 2.5 节“针对 TCP 的优化建议”;
• 4.7 节“针对 TLS 的优化建议”。
最后,就是应用层。无论从哪个角度讲,HTTP 都是出奇成功的一个协议。毕竟,
它是数十亿客户端与服务器交流的“通用语言”,没有它就没有现代 Web(万维
网)。可是,HTTP 也是一个不完美的协议,这就意味着我们在架构自己的应用时必
须格外小心:
• 我们必须想方设法地绕过 HTTP 1.x 的种种限制;
• 我们必须掌握利用 HTTP 2.0 性能增强的方法;
• 我们必须在应用经典的性能最佳实践时保持警惕。
202 | 第 13 章