跳到正文
Search Engine Journal· Matt G. Southern·· 23 小时前AI 评分63

Google Lighthouse 13.6.0 改变 PageSpeed Insights 的页面加载模拟方式

Google Lighthouse Update Changes How PageSpeed Insights Simulates Loading via @sejournal, @MattGSouthern

AI 导读

PageSpeed Insights 已使用 Lighthouse 13.6.0,新版本调整了页面加载模拟方式,使模拟 FCP 和 LCP 更准确且通常带来更高分数。由于测试机制变化,页面即使未修改也可能出现不同分数,JavaScript 较多的网站更可能受到影响。对比优化前后结果时,应确认 Lighthouse 版本一致,并结合过去 28 天的 CrUX 现场数据判断真实用户体验。

正文 · AI 翻译

PageSpeed Insights 现在使用的是 Lighthouse 13.6.0,该版本于 10 月 27 日发布。这个 Lighthouse 版本改变了对网页加载所需时间的模拟方式。

Chrome Web Performance 开发者倡导者 Barry Pollard 在 Bluesky 上表示,搭载 Lighthouse 13.6.0 的更新版 PageSpeed Insights 现已上线。他表示,这一版本改进了模拟 FCP(First Contentful Paint,首次内容绘制)和模拟 LCP(Largest Contentful Paint,最大内容绘制),Pollard 称二者会比之前更加准确,通常也会带来更高的分数。

由于测试方式发生变化,即使网页本身没有任何改变,也可能获得不同的 PageSpeed Insights 分数。Pollard 还表示,高度依赖 JavaScript 的网站更有可能受到更新后测试的影响。

Pollard 指向高度依赖 JavaScript 的网站

Pollard 引用了一名开发者的发帖内容,该开发者表示,自 Lighthouse 更新以来,单页应用(SPA)的结果有了明显改善,并以 react.dev 为例。他在帖子开头写道:“确实如此!”,随后补充道:

“请注意,这并非 SPA 特有的问题(也与我们一直在开发的其他 SPA 相关事项无关),但更有可能影响高度依赖 JS 的网站。”

我在去年 10 月写过的 Chrome 实验性软导航指标,是衡量用户体验的另一种方式。这些数据来自真实的 Chrome 用户,通过 Chrome 用户体验报告(CrUX)收集;而 Lighthouse 使用的是模拟测试。

模拟方式发生了哪些变化

默认情况下,Lighthouse 会以全速加载网页,然后估算网页在较慢连接下的加载情况。限速文档称,这种模拟限速与 PageSpeed Insights 的设置相匹配。

Lighthouse 13.6.0 版本的发布说明列出了 Lantern 的几项变化。Lantern 是这些估算背后的模拟系统,这些变化旨在提高其准确性。

Lighthouse 13.5 使用每个请求的获取优先级来判断该请求是否阻塞渲染。在 13.6 中,Lantern 使用 Chrome 自身为每个请求标记的阻塞渲染标签(只有在缺少该标签时,才会退回使用优先级)。

第二项变化适用于 LCP 元素是文本、且该文本与网页的首个内容出现在同一帧中的情况。现在,Lantern 会使用与估算 FCP 相同的请求和页面任务来估算 LCP,而不是使用一个可能包含 LCP 之前发出的所有请求的集合。

Ivan Akulov 在一个 GitHub issue 中展示了旧模拟方式如何处理一个使用 Framer 创建的测试页面:首屏可见区域上方的唯一内容是文本,因此同一个元素同时被计为 FCP 和 LCP。对于这段文本,Lighthouse 报告的 LCP 比 FCP 晚得多。尽管为网页的 JavaScript 模块预加载能够改善真实网页的交互时间,但这会导致模拟 LCP 变差。

Pollard 在一条回复中感谢了 Akulov,并表示他“推动了其中一些改进”。Lighthouse 团队已将该 issue 标记为完成,相关改进包含在 13.6 版本发布说明所列出的 Lantern 升级中。

ARD 审计现在会检查 ard.json

Lighthouse 13.6 还更新了 Agentic Resource Discovery(ARD)审计。该审计源自 Lighthouse 13.5,我曾在9 月报道过相关内容。Lighthouse 13.5 发布时,会在旧的 ai-catalog 名称下查找 ARD 清单,尽管规范已经改为 ard.json。因此,如果你的网站只使用了新名称,但没有在 robots.txt 文件中添加名为 Agentmap 的行,该项就会显示为“不适用”。

通过此次更新,Lighthouse 13.6 将先查找 Agentmap 行、rel="ard" 链接标签或 Link 标头以及 /.well-known/ard.json,然后再查找 ai-catalog 名称。如果 Lighthouse 13.6 仅在 ai-catalog 位置找到清单,它会注明 ARD 消费者不需要检查该位置。

实验室评分与现场数据

PageSpeed Insights 中列出的网页性能分数基于 Lighthouse 生成的数据。根据 Google 的 PageSpeed Insights 文档,实验室数据是使用在固定网络条件下运行的单台设备进行模拟加载所得的结果。他们指出,“实验室数据良好并不一定意味着真实用户体验也会良好。”

现场数据(也显示在同一份报告中)代表过去 28 天内真实访问你网站的情况,由 CrUX 报告。每份 PageSpeed Insights 报告都会在模拟设备旁标明用于生成结果的 Lighthouse 版本。

这为何重要

Lighthouse 13.6 更新前后的 PageSpeed Insights 分数并非通过相同的模拟测得。在你刚刚优化的页面上,实验室分数的部分提升可能来自新版本;而跟踪实验室分数随时间变化的图表,可能会在切换到 13.6 时显示跳升。

在报告改进之前,请确认两份报告标明的是同一个 Lighthouse 版本,并比较现场数据。

展望未来

Lighthouse 的发行说明称,其团队预计 13.6 将随 Chrome 159 发布到 DevTools 中。目前 Chrome 159 已进入 Chrome 桌面版的 Dev 渠道和 Canary。截至 11 月 2 日,Chrome 的发布日程列出的 Chrome 159 稳定版发布日期为 12 月 8 日。

Lighthouse GitHub 上的一个开放问题也在调查 Lantern 模拟的 LCP 远高于测量所得 LCP 的情况,并以大型 JavaScript 和 SPA 网站作为示例。

题图:Remo_Designer/Shutterstock

来源:Search Engine Journal · searchenginejournal.com