Total Blocking Time
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
总阻塞时间 (TBT) 是 Lighthouse 报告的性能部分跟踪的指标之一。每个指标都会捕获网页加载速度的某个方面。
Lighthouse 报告会显示以毫秒为单位的 TBT:
TBT 衡量的内容
TBT 衡量的是网页被禁止响应用户输入(例如鼠标点击、屏幕点按或键盘按下操作)的总时长。总和的计算方法是:将 First Contentful Paint 和 Time to Interactive 之间所有长任务的阻塞部分相加。任何执行时间超过 50 毫秒的任务都是耗时较长的任务。50 毫秒之后的时间属于阻塞部分。例如,如果 Lighthouse 检测到时长为 70 毫秒的任务,则阻塞部分将为 20 毫秒。
Lighthouse 如何确定您的 TBT 得分
TBT 得分是网页的 TBT 时间与在移动设备上加载时数以百万计的实际网站数的比值。如需了解如何设置 Lighthouse 得分阈值,请参阅如何确定指标得分。
下表展示了如何解读 TBT 分数:
TBT 时间 (以毫秒为单位) |
颜色编码 |
0 - 200 |
绿色(快速) |
200-600 |
橙色(中等) |
600 多个 |
红色(慢) |
如何提高 TBT 分数
如需了解如何使用 Chrome 开发者工具的“性能”面板诊断长时间运行的任务的根本原因,请参阅导致任务过长的原因是什么?。
通常,造成任务耗时较长的最常见的原因包括:
- 不必要的 JavaScript 加载、解析或执行。分析“Performance”面板中的代码时,您可能会发现主线程执行的工作并不是加载页面所必需的。通过代码拆分减少 JavaScript 载荷、移除未使用的代码或高效加载第三方 JavaScript,应该可以提高 TBT 得分。
- 低效的 JavaScript 语句。例如,分析“性能”面板中的代码后,假设您看到对
document.querySelectorAll('a')
的调用会返回 2000 个节点。重构代码以使用仅返回 10 个节点的更具体的选择器,应该可以提高 TBT 分数。
除非您有明确的理由关注某个特定指标,否则通常最好专注于提高总体性能得分。
使用 Lighthouse 报告的优化建议部分可确定哪些改进能给您的网页带来最大的价值。优化建议越重要,对性能得分的影响就越大。例如,下面的 Lighthouse 屏幕截图显示消除阻塞渲染的资源将实现最大的改进:
请参阅“性能审核”着陆页,了解如何解决 Lighthouse 报告中发现的机会。
资源
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2019-10-09。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"没有我需要的信息"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"太复杂/步骤太多"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"内容需要更新"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻译问题"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"示例/代码问题"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"易于理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"解决了我的问题"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{"lastModified": "\u6700\u540e\u66f4\u65b0\u65f6\u95f4 (UTC)\uff1a2019-10-09\u3002"}
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2019-10-09。"],[],[]]