Specs 性能评估模型 RAIL
阅读(4444)RAIL 是 Google 提出的以用户为中心的性能模型(A User-Centric Model For Performance),一切以用户体验愉悦为核心。
RAIL stands for:
- Response : 100ms内响应用户操作
- Animation : 10ms内生成动画的一帧
- Idle : 最大程度增加主线程的空闲时间
- Load : 1000ms内呈现内容
100ms 响应用户操作
100ms 是进行开销大运算的衡量点,如果无法满足,考虑Web Worker来后台运行。Web Worker 是运行在主线程以外的另外线程。
超过500ms才能完成的操作,提供视觉或其他可感知的反馈给用户。
10ms 生成动画的一帧
流畅的动画是每秒60帧,换算到每帧 1000ms/60≈16.67ms,除去绘制时间,留给动画生成的时间只有10ms。
最大程度增加主线程的空闲时间
保持主线程的空闲,以备尽快响应用户可能发生的交互。
这是一种综合型的表述,和其他几点交叉。
1000ms 呈现内容
优化关键渲染路径,达到1s 内加载页面主要内容并做呈现,对非关键内容采取渐进式渲染。
以上只是概述,实际涉及许多细节。
Refer:
https://developers.google.com/web/fundamentals/performance/rail