得鹿梦鱼 得鹿梦鱼

Lighthouse

Lighthouse是一款自动化的开源工具,可帮助您提升网页质量, 可针对性能、无障碍、渐进式 Web 应用、搜索引擎优化 SEO 等方面进行评估。您可以针对任何网页(公开网页或需要身份验证的网页)运行 Lighthouse

您可以将 Lighthouse 作为 PageSpeed Insights 的一部分运行,也可以在 Chrome 开发者工具中、从命令行运行,或者作为 Node 模块运行。您为 Lighthouse 提供要审核的网址,它将针对此网页运行一系列审核,然后生成一个有关网页性能的报告。然后,您可以将失败的审核作为指标,了解如何改进网页

性能评分

通常,只有指标会影响 Lighthouse 性能得分,而非“建议”或“诊断”的结果。不过,改进优化建议和诊断信息可能会提高指标值,因此二者之间存在间接关系

评分波动的原因

总体性能得分和指标值中的很多变化并非是由 Lighthouse 造成的。如果效果得分出现波动,通常是由于基础条件发生变化所致。常见问题包括:

  • A/B 测试或更改正在投放的广告
  • 互联网流量路由更改
  • 在不同的设备(例如高性能桌面设备和低性能笔记本电脑)上进行测试
  • 注入 JavaScript 和添加/修改网络请求的浏览器扩展程序
  • 杀毒软件

效果得分的加权方式

效果得分是指标得分的加权平均值。当然,权重较高的指标对整体性能得分的影响更大。 指标得分不会显示在报告中,而是在后台计算得出

选择加权是为了平衡用户对效果的看法。权重会随时间而变化,因为 Lighthouse 团队会定期开展研究并收集反馈,以了解哪些因素对用户感知的性能有最大影响

指标分数是如何确定的

收集性能指标(大多数以毫秒为单位报告)后,会根据指标值在 Lighthouse 评分分布中的所处位置,将每个原始指标值转换为 0 到 100 之间的指标得分。评分分布是基于 HTTP 归档中真实网站性能数据的性能指标派生出来的对数正态分布

http 归档

“http 归档”是指将 HTTP 请求和响应的数据保存为静态文件的过程。这些归档文件通常包含了网站在某一时刻的所有网络活动记录,比如页面加载时发起的请求、服务器返回的响应内容、请求头、响应头等信息。

主要用途包括:

  • 网站历史数据保存:可以用来记录和回溯网站在某一时间点的状态。
  • 性能分析:开发者可以通过分析归档文件,了解页面加载过程中的瓶颈和问题。
  • 备份与审计:作为网站内容和行为的备份,便于后续审计和恢复。
  • 常见的 http 归档格式有 HAR(HTTP Archive),它是一种基于 JSON 的标准格式,广泛用于浏览器开发者工具和性能分析工具