Page 163 - Web性能权威指南
P. 163

现在,把 DNS 查询,随后的 TCP 握手,以及请求网页所需的几次往返时间都算上,
               光网络上的延迟就能轻易突破 100~1000  ms 的预算(参见表 8-1)。难怪有那么多用
               户,特别是那些移动或无线用户,抱怨上网速度慢了!


                           Jakob Nielsen 的 Usability  Engineering 和 Steven Seow 的 Designing  and
                          Engineering Time 是每一位开发者和设计师都应该好好读的书!时间测量
                          是客观的,而时间感知是主观的。我们可以通过设计来改善感知性能。



                                           把性能变成钞票
                速度是一种功能,而非简单的为了速度而速度。谷歌、微软和亚马逊的研究都表
                明,性能可以直接转换成收入。比如,Bing 搜索网页时延迟 2000 ms 会导致每用
                户收入减少 4.3%。
                类似地,Aberdeen 一项覆盖 160 多家组织的研究表明,页面加载时间增加 1 秒,
                会导致转化率损失 7%,页面浏览量减少 11%,客户满意度降低 16% !
                网络越快,PV 越多,黏性越强,转化率越高。不过,不能只听这些行业调查的结
                论,你还得根据自己的标准来测量自己网站的性能。至于为什么,请往下看,或
                者直接跳到 10.4 节“人造和真实用户性能度量”。



               10.2.2 分析资源瀑布

               谈到 Web 性能,必然要谈资源瀑布。事实上,资源瀑布很可能是我们可以用来分
               析网络性能,诊断网络问题的一个最有价值的工具。很多浏览器都内置了一些手
               段,让我们能查看资源瀑布。此外,还有一些不错的在线工具,比如 WebPageTest
              (http://www.webpagetest.org/),可以在不同的浏览器中呈现资源瀑布。


                          WebPageTest.org 是一个开源免费的项目,可以测试世界各地网页的性
                          能。测试用的浏览器在虚拟机中运行,可编程,可配置,有各种连接和
                          浏览器设置可选。测试完成后,通过网页就可以查看结果。这一切使得
                          WebPageTest 成为无与伦比的 Web 性能测试工具。

               首先,必须知道每一个 HTTP 请求都由很多独立的阶段构成(图 10-3):DNS 解
               析、TCP 连接握手、TLS 协商(必要时)、发送 HTTP 请求,然后下载内容。这
               些阶段的时长在不同的浏览器中会略有不同,但为了简单起见,本章就使用
               WebPageTest 测试的结果。请大家提前熟悉每种颜色在自己浏览器中的含义。





               148   |   第 10 章
   158   159   160   161   162   163   164   165   166   167   168