Web Vitals :Google 如何定义性能指标及帮助开发者调优前端性能 ?

简介: 来自 Google 的Palances Liao 将在第十五届 D2 前端技术论坛带来 《以全球 Web 角度谈前端性能的更新与趋势》主题演讲,与大家分享关于 Core Web Vitals 的最新指标及每个指标的更新。

优化用户体验质量是所有网站取得长期成功的关键。通过与数百万网络开发者和网站所有者的持续交流和协作,我们在 Google 开发了许多实用指标和工具,以帮助企业所有者、市场营销人员和开发者发掘改善用户体验的机会。然而,丰富多样的指标和工具也给许多人带来了各种优先级、明晰度和一致性方面的挑战。


今天,我们为各位介绍一项名为 Web Vitals 的新计划,此计划的发起方为 Google,旨在提供各种质量信号的统一指南,我们相信这些质量信号对提供出色的网络用户体验至关重要。

image.pngCore Web Vitals


评估用户体验质量涉及多个指标,尽管部分用户体验是跟网站和内容相关,但还是有些共通信号,所以 Core Web Vitals 体现了最关键的几项指标。此类核心用户体验需求包括页面内容的加载体验、交互性和视觉稳定性,这些方面共同组成 2020 Core Web Vitals 的基础。

image.png

  • 最大内容绘制评估页面主要内容可能已完成加载时的感知加载速度,并在页面加载时间轴上标记时间点。
  • 首次输入延迟评估用户首次尝试与网页交互时的网页响应速度,并量化用户感知体验。
  • 累积布局偏移评估可见页面内容的视觉稳定性,并量化内容的意外布局偏移量。


所有上述指标均捕获以用户为中心的重要体验结果,可现场测量,并具有支持性实验室诊断等效指标和工具。例如,虽然「最大内容绘制」是最重要的负载指标,但其也高度依赖于首次内容绘制 (FCP) 和首字节响应时间 (TTFB),这些指标对监控和优化均具有非常重要的意义。

评估 Core Web Vitals

我们的目标是创建简单且易于访问和评估的 Core Web Vitals,让所有网站所有者和开发者在 Google 界面及其自己的仪表板和工具中都能轻松使用。


Chrome UX Report 让网站所有者能够快速评估其网站的各项 Web Vital 性能,获取实际 Chrome 用户的真实体验数据。BigQuery 数据集已经能够展示所有 Core Web Vitals 可公开访问的数据,同时我们正在开发全新的 REST API,以实现对 URL 和原始级别数据的轻松访问,敬请期待。


我们强烈建议所有网站所有者针对每项 Core Web Vital 收集自己的真实用户评估分析结果。为此,包括 Google Chrome 在内的多个浏览器已实施并提供对所有当前 Core Web Vitals 规范草案的支持:最大内容绘制、布局不稳定性和事件时间。此外,今天我们还将推出一个 web-vitals 开源 JavaScript 库,该库提供可立即投入生产的小型包装器,可与支持自定义指标的任何分析提供程序搭配使用,也可用作准确捕获网站用户各项 Core Web Vitals 的参考。

// 使用 web-vitals 评估和报告 CLS、FID 及 LCP 的示例。
import { getCLS, getFID, getLCP } from 'web-vitals';
function reportToAnalytics(data) {
  const body = JSON.stringify(data);
  (navigator.sendBeacon && navigator.sendBeacon('/analytics', body)) ||
      fetch('/analytics', {body, method: 'POST', keepalive: true});
}
getCLS((metric) => reportToAnalytics({ cls: metric.value }));
getFID((metric) => reportToAnalytics({ fid: metric.value }));
getLCP((metric) => reportToAnalytics({ lcp: metric.value }));

我们在测试和开发过程中发现,在开发环境和生产环境轻松访问每项 Core Web Vital 的功能非常有用。为帮助当下的开发者发掘优化机会,今天我们还要推出全新 Core Web Vitals 扩展程序的开发者预览版。在浏览网页的过程中,此扩展程序会在 Chrome 浏览器中显示有关每项 Vital 的视觉标识,将来还可以通过此程序来查看汇总的真实用户数据分析(由 Chrome UX Report 提供),以了解当前网址(URL)和来源(origin)的每项 Core Vital 状态


最后,在接下来的几个月里,我们将更新 Lighthouse、Chrome DevTools、PageSpeed Insights、Search Console 的速度报告和其他主流工具,以重点强调并提供统一的可执行指导,进而改进 Core Web Vitals。

不断发展 Core Web Vitals

2020 Core Web Vitals 着重于三个主要衡量指标,暂未捕获完整的Web用户体验。我们预计每年对 Core Web Vitals 进行一次更新,并定期更新未来候选指标、动机和实施状态。


展望 2021 年,我们将投资构建针对页面速度及其他关键用户体验特征的指标,以增强理解和评估能力。例如,扩展对所有交互中 (而不仅仅是第一次交互) 输入延迟的评估功能;构建用于评估和量化平滑度的新指标、可实现即时且保护隐私的网络体验的原语和支持指标等等。


第十五届 D2 前端技术论坛,来自 Google 的 Palances Liao 将带来 《以全球 Web 角度谈前端性能的更新与趋势》主题演讲,与大家分享关于 Core Web Vitals 的最新指标及每个指标的更新。

image.png

相关链接


Web Vitalshttps://web.dev/vitals/

核心用户体验需求https://web.dev/user-centric-performance-metrics/#defining-metrics

最大内容绘制:https://web.dev/lcp/

首次输入延迟https://web.dev/fid/

累积布局偏移https://web.dev/cls/

首字节响应时间https://web.dev/time-to-first-byte/

真实用户评估分析结果https://web.dev/user-centric-performance-metrics/#in-the-field

布局不稳定性:https://wicg.github.io/layout-instability/

事件时间:https://wicg.github.io/event-timing/

Core Web Vitals 扩展程序:https://github.com/GoogleChrome/web-vitals-extension/



image.png

关注「Alibaba F2E」

把握阿里巴巴前端新动向

相关文章
|
1月前
|
前端开发 JavaScript 安全
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第27天】本文介绍了HTTP/2和HTTPS在前端性能调优中的应用。通过多路复用、服务器推送和头部压缩等特性,HTTP/2显著提升了Web性能。同时,HTTPS确保了数据传输的安全性。文章提供了示例代码,展示了如何使用Node.js创建一个HTTP/2服务器。
62 3
|
1月前
|
前端开发 JavaScript
探索现代Web应用的微前端架构
【10月更文挑战第40天】在数字时代的浪潮中,Web应用的发展日益复杂多变。微前端架构作为一种新兴的设计理念,正逐步改变着传统的单一前端开发模式。本文将深入探讨微前端的核心概念、实现原理及其在实际项目中的应用,同时通过一个简单的代码示例,揭示如何将一个庞大的前端工程拆分成小而美的模块,进而提升项目的可维护性、可扩展性和开发效率。
|
28天前
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
35 6
|
1月前
|
消息中间件 前端开发 JavaScript
探索微前端架构:构建现代Web应用的新策略
本文探讨了微前端架构的概念、优势及实施策略,旨在解决传统单体应用难以快速迭代和团队协作的问题。微前端允许不同团队独立开发、部署应用的各部分,提升灵活性与可维护性。文中还讨论了技术栈灵活性、独立部署、团队自治等优势,并提出了定义清晰接口、使用Web组件、状态管理和样式隔离等实施策略。
|
1月前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。
|
2月前
|
XML JSON 安全
定义Web服务
【10月更文挑战第18天】定义Web服务
78 12
|
1月前
|
前端开发 安全 应用服务中间件
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第26天】随着互联网的快速发展,前端性能调优成为开发者的重要任务。本文探讨了HTTP/2与HTTPS在前端性能优化中的应用,介绍了二进制分帧、多路复用和服务器推送等特性,并通过Nginx配置示例展示了如何启用HTTP/2和HTTPS,以提升Web应用的性能和安全性。
40 3
|
1月前
|
前端开发 JavaScript API
前端框架新探索:Svelte在构建高性能Web应用中的优势
【10月更文挑战第26天】近年来,前端技术飞速发展,Svelte凭借独特的编译时优化和简洁的API设计,成为构建高性能Web应用的优选。本文介绍Svelte的特点和优势,包括编译而非虚拟DOM、组件化开发、状态管理及响应式更新机制,并通过示例代码展示其使用方法。
53 2
|
2月前
|
人工智能 前端开发
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
|
2月前
|
存储 前端开发 JavaScript
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
【10月更文挑战第4天】本文探讨了从 Web 2.0 到 Web 3.0 的前端开发演变过程。Web 2.0 时代,前端开发者从静态网页设计走向复杂交互,技术框架如 jQuery、React 和 Vue 带来了巨大的变革。而 Web 3.0 以区块链技术为核心,带来了去中心化的互联网体验,前端开发者面临与区块链交互、去中心化身份验证、分布式存储等新挑战。文章总结了 Web 2.0 和 Web 3.0 的核心区别,并为开发者提供了如何应对新技术的建议,帮助他们在新时代中掌握技能、设计更安全的用户体验。
70 0
从 Web 2.0 到 Web 3.0:前端开发的历史与未来