这是我参与「第五届青训营 」伴学笔记创作活动的第 24 天
1.web性能标准的诞生
- 早期网页是纯静态的,但随着Web 爆发式发展,页面交互越来越复杂。开发者开始思考如何提高 Web 性能、改善用户体验。
- 因此,2010年8月,W3C成立了 Web 性能工作组,由来自 Google 和 Microsoft 的程师担任主席,目标是制定衡量 wWeb 应用性能的方法和 API。
- 随后,Web 性能工作组开始制定一系列 Web 性能标准,应用到桌面和移动浏览器以及其他环境中,帮助 web 开发人员评估和理解应用的性能特征。
2.以用户为中心的性能指标
- TBT (Total Blocking Time) : 量化主线程在空闲之前的繁忙程度,有助于理解在加载期间,页面无法响应用户输入的时间有多久。
- 长任务: 如果一个任务在主线程上运行超过 50 毫秒,那么它就是长任务。超过50ms 后的任务耗时,都算作任务的阻塞时间。
- 一个页面的TBT,是从 FCP 到 TTI 之间所有长任务的阻塞时间的总和。
3.静态资源错误
- 静态资源:加载页面所需的 html、css 和js 等文件,以及其他各类多媒体文件,如图片、音频和视频等。
- 静态资源错误:在拉取和加载静态资源的过程中发生了预期之外的错误,如网络异常等,导致静态资源无法正常染到页面上。
4.白屏异常
监听到白屏发生后,我们还需要对白屏的发生进行归因 通常导致白屏发生的原因可能有如下几点:
- 发生 Js 错误导致关键资源染失败
- 请求异常或静态资源加载失败。
- 长时间的 Js 线程繁忙阻塞染任务