要直接回答这个问题,不,获得快速 FCP 标签并非不可能。这个问题还有很多,所以我会尝试详细说明。
另一种表述“快速”标准的方式是:“至少 90%的用户体验的 FCP 是否小于 1 秒?”
为什么是 90%?因为它包含了很大一部分用户体验。正如PSI 文档所说:
我们的目标是确保页面适合大多数用户。通过关注我们指标的第 90 个和第 95 个百分位值,这可确保页面在最困难的设备和网络条件下满足最低性能标准。
为什么是 1 秒?这是用户期望页面开始显示有意义进展的速度的主观值。1 秒后,用户可能会分心甚至沮丧。当然,圣杯是即时加载,但这被选为一个现实的基准来争取。
所以最坏的情况是 10% 的 FCP 体验是 1 秒或更慢。这种特定的保证是一个足够高的标准,可以确信用户始终拥有快速的体验。
这就解释了为什么酒吧设置在它所在的位置。对于实现起来有多现实的问题,我们实际上可以使用BigQuery 上公开的 CrUX 数据来回答这个问题。
#standardSQL
SELECT
p90,
COUNT(0) AS numOrigins
FROM (
SELECT
origin,
MIN(start) AS p90
FROM (
SELECT
origin,
bin.start,
SUM(bin.density) OVER (PARTITION BY origin ORDER BY bin.start) AS cdf
FROM
`chrome-ux-report.all.201901`,
UNNEST(first_contentful_paint.histogram.bin) AS bin)
WHERE
cdf >= 0.9
GROUP BY
origin)
GROUP BY
p90
ORDER BY
p90
这是一个计算 FCP 直方图来源的第 90 个百分位数的查询。如果这听起来令人困惑,这里有一个可视化:
红色累积分布线越过 1000 毫秒标记的位置告诉我们将被标记为快速的来源的百分比。不是很多;数据集中只有 2% 或 110153 个来源。
有趣的是,浏览“快速 FCP”来源列表,其中许多都有.jp
TLD .kr
。可以合理地假设它们是本地化的日本和韩国网站,其用户几乎完全来自这些国家。这些是互联网速度很快的国家。因此,当您的用户始终保持快速的连接速度时,在 90% 以上的时间内为快速网站提供服务自然会更容易。
我们可以做的另一件事是了解原产地的受欢迎程度,那就是加入 Alexa 前 100 万个域名列表:
#standardSQL
SELECT
Alexa_rank,
Alexa_domain,
COUNT(0) AS numOrigins,
ARRAY_AGG(origin LIMIT 3) AS originSample
FROM (
SELECT
origin,
MIN(start) AS p90
FROM (
SELECT
origin,
bin.start,
SUM(bin.density) OVER (PARTITION BY origin ORDER BY bin.start) AS cdf
FROM
`chrome-ux-report.all.201901`,
UNNEST(first_contentful_paint.histogram.bin) AS bin)
WHERE
cdf >= 0.9
GROUP BY
origin)
JOIN
`httparchive.urls.20170315`
ON
NET.REG_DOMAIN(origin) = Alexa_domain
WHERE
p90 < 1000
GROUP BY
Alexa_rank,
Alexa_domain
ORDER BY
Alexa_rank
有 35985 个域的域在前 1M 中。您可以自己运行查询以查看完整结果。
您可以看到,前 20 个域中有大约 100 个来源符合 FCP 的要求。在列表中进一步挑选一些有趣的例子:
需要注意的是,这些来源不一定是排名靠前的,只是它们的域。在没有原始排名数据的情况下,这是我能做的最好的近似值。
较小的警告是,BigQuery 和 PSI 在桌面/移动设备上是略有不同的数据集和 PSI 细分,而我的分析将它们结合在一起。因此,这项研究并不能完美地代表 PSI 的预期。
最后,我只想解决关于在 Lighthouse 中获得 100 分的问题。100 分并不一定意味着没有任何需要改进的地方。像这样的综合测试需要校准以代表实际的用户体验。例如,如果在代表菲律宾用户体验的条件下进行测试,性能审计可能会开始失败。实际从该位置运行测试可能会出现性能问题,例如内容分发问题,以及我们可以在任何地方模拟的条件(如连接速度)。
总结一切:
- 设置高标准是因为我们希望确保绝大多数用户体验是快速的
- 许多网站已经超过了这个标准,尽管只占整个数据集的一小部分
- Alexa 排名向我们展示了拥有一个访问量很大的网站并提供始终如一的快速体验是可能的