Matni me të dyja lab dhe field data — ato u përgjigjen pyetjeve të ndryshme. Lighthouse është lab (sintetik, i riprodhueshëm, për debug); RUM është field (përdorues realë, për të vërtetën). Nëse i besoni vetëm njërit, optimizoni gjënë e gabuar.
Matni me të dyja lab dhe field data — ato u përgjigjen pyetjeve të ndryshme. Lighthouse është lab (sintetik, i riprodhueshëm, për debug); RUM është field (përdorues realë, për të vërtetën). Nëse i besoni vetëm njërit, optimizoni gjënë e gabuar.
| Lab (Lighthouse) | Field / RUM |
|---|
| Burimi | Një ekzekutim sintetik, pajisje/rrjet fikse | Vizita reale, të gjitha pajisjet/rrjetet |
| I mirë për | Debug, gate-e regresioni në CI, i përsëritshëm | Çfarë faktikisht përjetojnë përdoruesit |
| INP | S'mund të matet (pa interaksione reale) | I matur gjatë gjithë vizitës |
| Dobësia | Nuk pasqyron trafikun tuaj real | I zhurmshëm, kërkon volum, më i vështirë për debug |
Lighthouse ekzekuton një ngarkim të vetëm të throttled në një makinë të pastër — i shkëlqyer për riprodhimin e një problemi, i padobishëm për të ditur p75-ën tuaj. INP sidomos mund të kapet vetëm në field, sepse i duhen interaksione reale gjatë një sesioni.
import { onLCP, onCLS, onINP } from "web-vitals";
function send(metric) {
// Attribution build tells you WHICH element/interaction caused it
navigator.sendBeacon("/rum", JSON.stringify({
name: metric.name, value: metric.value, id: metric.id,
}));
}
onLCP(send); onCLS(send); onINP(send); // report each metric as it finalizes
Kjo është e njëjta metodologji si CrUX i Google-it (Chrome User Experience Report), i cili fuqizon renditjen në Search — CrUX është p75 e përdoruesve realë, jo lab.
Sinjali senior është të diturit se lab ≠ field, se renditja përdor p75-ën e field-it, dhe se INP është real vetëm në field. Optimizimi i një score-i Lighthouse ndërsa p75-ja reale mbetet e dobët është një kurth klasik që kjo pyetje është dizajnuar të ekspozojë.
Një bibliotekë pyetjesh intervistash IT me përgjigje të detajuara — nga Junior te Senior.
Dhuro