lab અને field બંને data થી માપો — તેઓ જુદા પ્રશ્નોના જવાબ આપે છે. Lighthouse એ lab છે (synthetic, reproducible, debugging માટe); RUM એ field છે (વાસ્તવિક user, સત્ય માટe). જો તમે માત્ર એક પર ભરોસો કરો, તો તમે ખોટી વસ્તુ optimize કરો છો.
lab અને field બંને data થી માપો — તેઓ જુદા પ્રશ્નોના જવાબ આપે છે. Lighthouse એ lab છે (synthetic, reproducible, debugging માટe); RUM એ field છે (વાસ્તવિક user, સત્ય માટe). જો તમે માત્ર એક પર ભરોસો કરો, તો તમે ખોટી વસ્તુ optimize કરો છો.
| Lab (Lighthouse) | Field / RUM |
|---|
| Source | એક synthetic run, fixed device/network | વાસ્તવિક visit, બધા device/network |
| Good for | Debugging, CI regression gate, repeatable | user ખરેખર શું અનુભવે છે |
| INP | માપી શકતું નથી (કોઈ real interaction નહીં) | આખી visit દરમિયાન માપાય |
| Weakness | તમારા વાસ્તવિક traffic ને પ્રતિબિંબિત કરતું નથી | noisy, volume જોઈએ, debug કરવું કઠિન |
Lighthouse એક clean machine પર એક throttled load ચલાવે છે — issue reproduce કરવા સરસ, તમારો p75 જાણવા નકામું. ખાસ કરીને INP માત્ર field માં જ capture થઈ શકે છે, કારણ કે તેને session દરમિયાન real interaction જોઈએ છે.
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
આ Google ના CrUX (Chrome User Experience Report) જેવી જ પદ્ધતિ છે, જે Search ranking ને ચલાવે છે — CrUX એ real-user p75 છે, lab નહીં.
Senior signal એ જાણવું છે કે lab ≠ field, કે ranking field p75 વાપરે છે, અને કે INP માત્ર field માં જ વાસ્તવિક છે. real p75 નબળો રહે ત્યારે Lighthouse score optimize કરવો એ classic ફાંદો છે જે આ પ્રશ્ન ખુલ્લો પાડવા રચાયેલો છે.
વિગતવાર જવાબો સાથે IT ઇન્ટરવ્યૂ પ્રશ્નોની લાઇબ્રેરી — જુનિયરથી સિનિયર સુધી.
દાન કરો