直接答案:同批 25 个可分析首页,首次字节时间(TTFB)中位 215ms(P25 122、P75 293、最大 2342),HTML 体积中位 68.7KB(P25 24.8、P75 168.5、最大 457.6)。两者相关系数 -0.16,几乎无关。单次测量、单测量点、跨两天,不是 CrUX,也不用于排名。
这是验收条款第 8 条的背景数据。条款只要求“记录 TTFB 与 HTML 体积,且不要写成 CrUX”;这一期用第 4 期已公开的匿名数据做二次统计,回答两个问题:分布长什么样,以及“页面大 = 首字节慢”这个直觉是否成立。
方法:二次统计,不新增请求
数据来自 docs/research/2026-11-equipment-robots-scan.csv 的 ttfb_ms、html_kb、h1_count、jsonld 四个字段;纳入 http_status=200 的 25 行。本期零请求,不重新访问任何站点。
TTFB 是一次请求从发出到收到响应头的时间;体积是 HTML 响应体字节数,不含图片、CSS、JS、字体。抓取跨 2026-10-31 与 11-01 两天(5 条与 20 条),并非同一时刻的并发测量——这也是不能拿它排名的主要原因。
| 指标 | 最小 | P25 | 中位 | P75 | 最大 | 均值 |
|---|---|---|---|---|---|---|
| TTFB(ms) | 81 | 122 | 215 | 293 | 2,342 | 340.2 |
| HTML(KB) | 1.3 | 24.8 | 68.7 | 168.5 | 457.6 | 114.4 |
n=25。均值被单个异常值拉高:TTFB 均值 340.2 高于 P75 293;因此下文以中位与分位为主。
分布:一半站点在 200ms 内,1 个超过 1 秒
| TTFB | 站点数 | HTML 体积 | 站点数 |
|---|---|---|---|
| ≤200ms | 12 | ≤50KB | 11 |
| 201–500ms | 9 | 51–100KB | 4 |
| 501–1000ms | 3 | 101–200KB | 6 |
| >1000ms | 1 | >200KB | 4 |
TTFB 分布集中在 500ms 以内(21/25),但存在 1 个 2,342ms 的异常点;HTML 体积则更分散,从 1.3KB 的极简页到 457.6KB 的大页面都有,超过 200KB 的有 4 个。体积的 P75(168.5KB)是中位(68.7KB)的 2.5 倍——说明“多数站点不重,少数站点很重”。
体积与首字节:几乎没有线性关系
25 个点的 Pearson 相关系数是 -0.16。两个极端例子比相关系数更直观:体积最大的 457.6KB 页面,TTFB 只有 118ms;TTFB 最慢的 2,342ms 页面,HTML 只有 23.5KB。
这符合机制:TTFB 主要取决于 DNS、连接建立、服务器处理与首包返回;HTML 体积影响的是下载、解析与后续渲染。把“页面大”当成“首字节慢”的原因,会修错地方——该压缩图片、拆脚本的时候去换服务器,或者反过来。
按体积分组的结构信号
| 分组(按体积中位 68.7KB) | 站点数 | H1 恰好 1 个 | 有 JSON-LD |
|---|---|---|---|
| 重(>68.7KB) | 12 | 6 | 4 |
| 轻(≤68.7KB) | 13 | 2 | 1 |
重的那组在 H1 与 JSON-LD 上计数更高,但这是事后分组、样本各 12/13,不能推出“页面越重结构越好”。更可能的解释是:体积大的站点往往功能更多、模板更完整,因而也更可能补上结构化数据;也可能只是巧合。这个观察留作下一期扩样本时的假设,不作为结论。
五条可执行结论
- 记录,不排名。 验收条款要的是“可复核的记录”:时间、UA、测量点、是否压缩,一起写。
- 单次 TTFB 不足以下结论。 至少 3 次取中位,并注明网络与时间;否则一个抖动就能改变判断。
- 别用体积推断首字节。 这批数据相关系数 -0.16;两者要分开测、分开改。
- 体积要看构成。 本次只统计 HTML;图片、JS、字体的体积与请求数没有计入,不能拿 HTML 大小代表整页重量。
- 不写成 CrUX。 真实用户分位数需要 CrUX 或 RUM;我们的单点测量只能叫“代理”。
局限
- 单次、单点:每次只发 1 个请求,受 DNS、TLS、链路与瞬时负载影响。
- 跨两天:5 条在 10-31、20 条在 11-01,站点与网络条件不同。
- 只测 HTML:不含图片、CSS、JS、字体,无法代表首屏体验。
- 样本非随机:单一名单、单一城市、25 家;属 pilot,不外推行业。
- 不推断因果:体积、TTFB、结构信号都可能由第三方因素共同决定。
- 不用于验收打分:测量条件未统一,只适合示范“记录什么”。
数据与复算
原始匿名数据:equipment-website-robots-scan-2026.csv(30 行,含 ttfb_ms、html_kb、h1_count、jsonld);仓库内为 docs/research/2026-11-equipment-robots-scan.csv。
统计脚本:scripts/performance_summary.py(分位数、分桶、Pearson);单元测试 scripts/test_performance_summary.py(14 项,无网络)。运行:
python -m unittest scripts.test_performance_summary
配套阅读:30 家装备企业 robots 扫描(同一批数据)、24 站四层观察、12 条验收条款模板(第 8 条性能代理)。
数据来源与口径
- TTFB 定义与测量注意:web.dev — Time to First Byte。
- Core Web Vitals 与 CrUX 的区别:web.dev — Web Vitals。
- 采样时间:2026-10-31 与 2026-11-01,UA
LingyiResearchBot/1.0,每站 1 次首页请求。