美文网首页
使用 RAIL 模型评估页面性能

使用 RAIL 模型评估页面性能

作者: 蟹老板爱写代码 | 来源:发表于2018-01-17 15:00 被阅读0次

RAIL 是一种以用户为中心的性能模型。每个网络应用均具有与其生命周期有关的四个不同方面,且这些方面以不同的方式影响着性能:

image.png

TL;DR

  • 以用户为中心;最终目标不是让您的网站在任何特定设备上都能运行很快,而是使用户满意。
  • 立即响应用户;在 100 毫秒以内确认用户输入。
  • 设置动画或滚动时,在 10 毫秒以内生成帧。
  • 最大程度增加主线程的空闲时间。
  • 持续吸引用户;在 1000 毫秒以内呈现交互内容。

以用户为中心

让用户成为您的性能工作的中心。用户花在网站上的大多数时间不是等待加载,而是在使用时等待响应。了解用户如何评价性能延迟:

屏幕快照 2018-01-17 15.01.35.png

响应:在 100 毫秒以内响应

在用户注意到滞后之前您有 100 毫秒的时间可以响应用户输入。这适用于大多数输入,不管他们是在点击按钮、切换表单控件还是启动动画。但不适用于触摸拖动或滚动。

如果您未响应,操作与反应之间的连接就会中断。用户会注意到。

尽管很明显应立即响应用户的操作,但这并不总是正确的做法。使用此 100 毫秒窗口执行其他开销大的工作,但需要谨慎,以免妨碍用户。如果可能,请在后台执行工作。

对于需要超过 500 毫秒才能完成的操作,请始终提供反馈。

动画:在 10 毫秒内生成一帧

动画不只是奇特的 UI 效果。例如,滚动和触摸拖动就是动画类型。

如果动画帧率发生变化,您的用户确实会注意到。您的目标就是每秒生成 60 帧,每一帧必须完成以下所有步骤:

image.png

从纯粹的数学角度而言,每帧的预算约为 16 毫秒(1000 毫秒 / 60 帧 = 16.66 毫秒/帧)。 但因为浏览器需要花费时间将新帧绘制到屏幕上,只有 10 毫秒来执行代码

在像动画一样的高压点中,关键是不论能不能做,什么都不要做,做最少的工作。 如果可能,请利用 100 毫秒响应预先计算开销大的工作,这样您就可以尽可能增加实现 60fps 的可能性。

如需了解详细信息,请参阅渲染性能

空闲:最大程度增加空闲时间

利用空闲时间完成推迟的工作。例如,尽可能减少预加载数据,以便您的应用快速加载,并利用空闲时间加载剩余数据。

推迟的工作应分成每个耗时约 50 毫秒的多个块。如果用户开始交互,优先级最高的事项是响应用户。

要实现小于 100 毫秒的响应,应用必须在每 50 毫秒内将控制返回给主线程,这样应用就可以执行其像素管道、对用户输入作出反应,等等。

以 50 毫秒块工作既可以完成任务,又能确保即时的响应。

加载:在 1000 毫秒以内呈现内容

在 1 秒钟内加载您的网站。否则,用户的注意力会分散,他们处理任务的感觉会中断。

侧重于优化关键渲染路径以取消阻止渲染。

您无需在 1 秒内加载所有内容以产生完整加载的感觉。启用渐进式渲染和在后台执行一些工作。将非必需的加载推迟到空闲时间段(请参阅此网站性能优化 Udacity 课程,了解更多信息)。

关键 RAIL 指标汇总

要根据 RAIL 指标评估您的网站,请使用 Chrome DevTools Timeline 工具记录用户操作。然后根据这些关键 RAIL 指标检查 Timeline 中的记录时间。

屏幕快照 2018-01-17 15.03.30.png

相关文章

  • 使用 RAIL 模型评估页面性能

    RAIL 是一种以用户为中心的性能模型。每个网络应用均具有与其生命周期有关的四个不同方面,且这些方面以不同的方式影...

  • 使用 RAIL 模型评估前端性能

    RAIL 是一种以用户为中心的性能模型。每个网络应用均具有与其生命周期有关的四个不同方面,且这些方面以不同的方式影...

  • Web性能指标

    Web性能指标模型 一、RAIL 模型 RAIL[https://web.dev/rail/] 是 Respons...

  • RAIL 性能模型

    优化到底在优化什么,用户关注什么,什么是标准chrome 推出 RAIL 性能模型 Response (50 ms...

  • RAIL测量模型

    前言 可量化网站性能的测量标准,通过RAIL模型指导性能优化的目标,量化指标。 什么是RAIL Respose(响...

  • 用RAIL模型分析性能

    用户对性能延迟的感知: 0-100ms 流畅 100-1000ms 感觉到网站上有一些加载任务 1000...

  • 为什么要做性能优化

    性能指标 RAIL 模型Response 响应 100ms 内获得回应Animation 动画 保持 60 帧,即...

  • 一文深度解读模型评估方法

    本文将总结机器学习最常见的模型评估指标。训练学习好的模型,通过客观地评估模型性能,才能更好实际运用决策。模型评估主...

  • 浅谈数据挖掘评估技术

    浅谈数据挖掘评估技术 前言:模型的性能评估是数据挖掘过程中重要的步骤,是模型能否投入到实际使用当中的一个重要环节。...

  • 模型性能评估

    不同的机器学习任务对应有不同的评估指标: 评估分类模型 混淆矩阵(Confusion matrix): True ...

网友评论

      本文标题:使用 RAIL 模型评估页面性能

      本文链接:https://www.haomeiwen.com/subject/xckuoxtx.html