「测出来挺快的,为什么用户还说卡?」

网页打开速度测试,一份报告里其实有七类信号,看哪几类,决定你下一步动哪里。下面七节就是这七类,从总分往后排。

总分只说明「慢不慢」,说明不了「慢在哪」

总分是一个揉出来的数。同一份报告,总分一样,可能一处是首字节长,另一处是下载长。

判据是总分后面有没有五段。没有,这个数只能当参考。

五段占比是能落地的那一类

dns、tcp、tls、ttfb、下载,五段谁最长,就指向哪一层。

判据是最长那一段占总耗时一半以上。占了,只动这一段,别的先放着。一半是经验线。

节点分布决定这个数能代表谁

十个节点以上、跨三个运营商、五个省以上,才有基本覆盖面。三个数都是经验线。

判据是节点列表里能不能看到省份。只看到「华东」「华南」这种大区,就先别下结论。

中位数比平均值更能代表多数人

平均值会被最慢的几个点拉高。十个点里一个八秒,平均下来还是很漂亮。

判据是平均值减中位数。差得越多,越要改看中位数。

用宝塔拨测的网站测速跑一次,五段耗时和节点地区是分开列的,先看最长那一段,再看它占几成。

复测能不能重现,决定这个数是不是「那一刻」

同一批节点连跑三次,自己跟自己都能差一成。一成也是经验线。

判据是三次的中位数有没有挪位。挪了,说明还不够稳。

状态码是唯一能分辨「慢」和「不通」的信号

200 只说明服务器应答了,不说明这一趟走得快。有码看码,无码看卡在哪段。

判据是那一趟有没有状态码。有码是慢,无码是这一趟根本没走完,和超时是一类东西。

五段之外的信号,决定「网络快」和「用户觉得快」

<figure><img src="https://image.bt.cn/20261113/3f6f15e805fb3bdd9320b2f60d9320b6.svg" alt="五段耗时都在一次请求之内,渲染和第三方脚本在请求之外" loading="lazy" width="1200" /><figcaption>五段都短还卡,问题在虚线右边</figcaption></figure>

五段加起来不到一秒,用户还说卡,问题在渲染和第三方脚本。

判据是换个干净浏览器再开一次。变快,说明是扩展或第三方。

有一处我还没确认:不同报告对「总耗时」是算到最后一个字节还是算到首屏渲染,各家定义不一样。我手上没有统一定义,所以对不上时,我以最长那一段的占比为准。